The idea is about an easy way to allow users to make upgrades (e.g.: changing from version 15.0 to version 15.1) using a GUI and as easy as they can in Ubuntu.

Something like a notification with a button to perform the upgrade with just one-click, instead of having to deal with the work of manually disable all of the repositories, update them manually, open the terminal and finally make a "zypper dup" .

In short, this would perform the following actions:

- Notify there is a new version of openSUSE, asking if the user wants to upgrade.
- If the user accepts it should upgrade all the repos (If possible. If not leave them deactivated)
- Make a "zypper dup"
- And finally make a computer reboot

Would be good if all this would be automatic (maybe even integrate it in Yast or in Discover - Apper, apparently, already supports this feature in Ubuntu).

This, i believe would bring good User benefits such as:

- encourage users to keep their distro in it's lastest version, even if they don't understand much about computers!
- bring them a greater experience in openSUSE since they will have access to stable and newest features and also many other improvements.
- it will end with the disadvantage of one of the most mentioned Ubuntu features.

We also, already, had a few implementations in this areas:

- openSUSE Wagon - now deprecated ( https://old-en.opensuse.org/Wagon )
- Yast-Migration Module - SLE specific that might be able to be adapted ( https://github.com/yast/yast-migration )

I don't believe there would be much work to this and the benefits would be great... :)

This should be applied to Tumbleweed as well. My idea for tumbleweed being: An option - off by default - to enable auto-upgrade without confirmation.

Would be good to have this feature without the need to register the system anywhere (unlike SUSE).

After some search i discovered someone already had this idea a long time ago. So I borrowed some text (with a few upgrades) from the OpenFATE feature (https://features.opensuse.org/313441).

Looking for hackers with the skills:

upgrade

This project is part of:

Hack Week 14 Hack Week 15 Hack Week 16 Hack Week 17 Hack Week 18 Hack Week 19 Hack Week 20

Activity

  • about 2 months ago: cdywan liked this project.
  • about 2 months ago: IGonzalezSosa liked this project.
  • 2 months ago: alarrosa liked this project.
  • 2 months ago: alarrosa disliked this project.
  • 2 months ago: dfaggioli liked this project.
  • 2 months ago: ybonatakis liked this project.
  • over 1 year ago: PSuarezHernandez liked this project.
  • over 1 year ago: SLindoMansilla liked this project.
  • over 1 year ago: deneb_alpha left this project.
  • over 1 year ago: juliogonzalezgil liked this project.
  • All Activity

    Comments

    • pluskalm
      over 4 years ago by pluskalm | Reply

      afaik correct spelling openSUSE

    • mwilck
      over 4 years ago by mwilck | Reply

      Would it make sense to combine this with an offline update approach (similar to FedUp on Fedora) to avoid crashes or other trouble that may happen during live updates?

    • maverick74
      over 4 years ago by maverick74 | Reply

      Yes, i believe it would make a lot of sense. As long as it's not mandatory, of course.

      It could be the default configuration, but if one (really) wants to take the risk it should be able to do live upgrades as well.

      (Anyway, isn't this the default behavior already? When one does a "zypper dup" it first downloads all the packages and only then performs the upgrade)

    • maverick74
      about 4 years ago by maverick74 | Reply

      I've been thinking about this and i would like to add that this applied to Tumbleweed would also be gold (my idea for tumbleweed being actually an option - off by default - to enable auto-upgrade without confirmation).

    • mbrugger
      over 3 years ago by mbrugger | Reply

      This is great idea. Actually the update problem is one why I hesitate to tell non-technical people to use openSUSE. Up to now Ubuntu does a much better job there.

    • maverick74
      over 3 years ago by maverick74 | Reply

      I just found this: https://progress.opensuse.org/issues/20910

      Not sure if this is related, however...

    • mwilck
      over 3 years ago by mwilck | Reply

      I wonder if we need some offline update tool such as dnf system-upgrade (formerly FedUp) on Fedora.

    • lnussel
      almost 3 years ago by lnussel | Reply

      I'd actually like to get Leap into SCC so we can reuse the existing yast migration module, ie no separate code to maintainer for openSUSE. The part about notifying the user of a distro upgrade would still need to be implemented somehow eg via packagekit and the updater applets.

      • maverick74
        about 2 years ago by maverick74 | Reply

        Hi. Are there any good news on this for 15.1?

        (or any news at all?) add-emoji

    • JonathanKang
      about 2 years ago by JonathanKang | Reply

      This can be implemented in GNOME Software and PackageKit.

      1. Several zypp backend method are missing in PackageKit to preform related actions.

      2. GNOME Software can upgrade the system with just a few clicks(this works in Fedora, which has proper PackageKit support).

      • maverick74
        almost 2 years ago by maverick74 | Reply

        I think Discover also supports it, as well as YaST thru the Online Migration module...

        I really don't think there would be much work to do on this, specially when compared to other projects, but after a few years we still don't have this feature in openSUSE, which i believe is a last-missing-block. Still, no one picks this up :(

    • fschnizlein
      almost 2 years ago by fschnizlein | Reply

      Hi I added recently added Leap support to SCC and I thought would be a nice to have the migrations also there. Since SCC already supports complex migrations from one to another product adding migrations for Leap shouldn't be a huge problem. I think this could be done as a hackweek project.

      • maverick74
        almost 2 years ago by maverick74 | Reply

        That's GREAT!!!

        2 questions, however:

        1.Is Tumbleweed also supported? 2.Are we required to register or is it available without registration?

      • ikapelyukhin
        almost 2 years ago by ikapelyukhin | Reply

        Registering openSUSE to SCC is kinda meh unless you actually plan to migrate it to SLES. However, I think it would be relatively trivial to re-implement the migration API endpoint as a stand-alone daemon working on localhost.

    • fschnizlein
      almost 2 years ago by fschnizlein | Reply

      How about implement it like this:

      • Provide a API (which requires no authentication at all) which lists all possible migrations for a given openSUSE CPE This could be provided for example by SCC and proxied to the opensuse.org domain
      • Add support for this to the SUSEConnect library which is already used by zypper migration and yast2-migration
      • Update/Write a good documentation for the openSUSE wiki

      Why I would do it like this:

      The infrastructure with the data is already their and maintained. Implementing another way, might be faster and more easy but I'm a little bit afraid, nobody is maintaining the new solution. On the other hand SCC is already in place. With adding Leap -> SLES migration the openSUSE products are already in the system, adding the migration path from Leap -> Leap or Leap -> Tumbleweed is no much more effort and @lnussel already has to make sure new versions get added. By using the already existing client solutions like yast2-migration and zypper migration we get two client applications which server both a GUI migration application and a already working zypper plugin.

      What do you think? @maverick74 and @ikapelyukhin?

      • maverick74
        almost 2 years ago by maverick74 | Reply

        I love the idea! :)

        I have just one question: in the tumbleweed case, could it be used to upgrade (say for e.g.:) from Tumbleweed 20190616 -> Tumbleweed 20190618 ?

        • fschnizlein
          almost 2 years ago by fschnizlein | Reply

          From my point of view both versions are in the end the same product release. I would just create Tumbleweed without dates as product and allow users to migrate from Leap to Tumbleweed and not from one snapshot to another.

          • maverick74
            almost 2 years ago by maverick74 | Reply

            It does make sense the way you put it!

            I'm totally in agree with your idea! :)

      • maverick74
        almost 2 years ago by maverick74 | Reply

        @fschnizlein Let me ask another question:

        In the Leap case, will user get notified that a new version is available?Or that is not in the scope of this project?

        Thank you. Happy hackweek :)

    • ikapelyukhin
      almost 2 years ago by ikapelyukhin | Reply

      I've put together opensuse-migration prototype -- it's a bit rough around the edges, but it does what I expect it to do. Give it a try, tell me what you think (via email or Github issues) :D

    • maverick74
      over 1 year ago by maverick74 | Reply

      Just an update:

      ikapelyukhin approach did not have any GUI and there is none planed.

      Also, i don't know if his implementation ever moved into the https://github.com/openSUSE/ namespace or if it just ended up being achieved.

      @ikapelyukhin , can you please bring some more light into the subject about the state of the project? Tks

    • lkocman
      over 1 year ago by lkocman | Reply

      There is a brand new tool to migrate any rhel-like system to RHEL. Perhaps you could inspire there. https://www.redhat.com/en/blog/convert2rhel-how-update-rhel-systems-place-subscribe-rhel?sccid=701f2000000tyBtAAI&fbclid=IwAR0WsT4yFNi3ovbpStKkmfTEgCxtqRiX-wJ-Sp0GMeN2QqVS5cAdSY7E

      Also have a look at the app migration (the web part)

      https://www.redhat.com/en/blog/whats-new-red-hat-application-migration-toolkit-42-including-oraclejdk-openjdk-migration

    • Pharaoh_Atem
      over 1 year ago by Pharaoh_Atem | Reply

      I've actually gotten pretty far in implementing something like this using dnf system-upgrade when rpm-repos-openSUSE-Leap is installed.

      Steps to try it:

      1. Install the rpm-repos-openSUSE-Leap package
      2. Install dnf and dnf-plugin-system-upgrade
      3. Run dnf system-upgrade --releasever 15.2 download
      4. Run dnf system-upgrade reboot

      Alternatively, you can install rpm-repos-openSUSE-Tumbleweed and use that to upgrade from Leap to Tumbleweed. add-emoji

    • maverick74
      2 months ago by maverick74 | Reply

      Things have gotten even simplier and now we just need just to run

      1. zypper --releasever=15.3 ref

      2. zypper --releasever=15.3 dup

      But there's still no official notification about new versions neither a Wizard GUI fot the upgrade...

    • ancorgs
    • cdywan
      about 2 months ago by cdywan | Reply

      Is there a plan for this hackweek? What's the current status? I love the idea of easy upgrades but there's so many different projects mentioned in comments...

      • maverick74
        about 2 months ago by maverick74 | Reply

        Nah... there has been a couple of iniciatives about this - some closer to the original idea, others not that quite. But there's never has been anything done that has been accepted into the main project.

        That's why i keep this thing open...

        Things have improved over (this many years) however.

        We are now able to use a simple "zypper releasever=15.3 dup" that will upgrade the repos and perform the upgrade - which is nice but...

        We still have no Notification when there's a new version available and no way to perform it without getting our fingers into the terminal.

        And that's the major idea: something like Ubuntu/Windows/MacOS that, when a new version of the OS is out, the user get's notified and with a simple button click (and password, naturally) he can perform the upgrade to the new version without having to type into the Terminal/konsole...

      • maverick74
        about 2 months ago by maverick74 | Reply

        Also, in case you missed it, ikapelyukhin put up a good implementation of this (with no GUI or notification at the time, however)... but interest from the openSUSE team was apparentely...... none... :(

        Issue link

    Similar Projects