#3 Offline Upgrades and System Upgrades
Opened 2 years ago by ngompa. Modified 6 months ago

The way we do system upgrades right now is just not very polished. We do have Plasma Discover and dnfdragora, but neither of them give users the ability to easily do system upgrades safely.

With GNOME, GNOME Software can pull this off, and Plasma Discover (at least) has the the framework to do this too. We should try to figure out what's needed to make this happen.

Metadata Update from @ngompa:
- Issue tagged with: experience

2 years ago

As is (for the last few years), if you set the PK_OFFLINE_UPDATE environment variable, it should already work. We decided not to make it the default because most people are still installing most of the applications from the distro and this makes it cumbersome.

My impression (as Discover maintainer) is that if people started to adopt flatpak/snap/younameit as a way to install their apps, the usability of this feature would drastically improve.

That said, I'd be happy to make it easier for you to use it. Also please test it, it's not very well tested yet, I'll be happy to fix whatever we need.

At the moment, I'm mainly interested in doing offline updates for OS upgrades. That is, doing Fedora 32 to Fedora 33 upgrades through an offline update system upgrade. Regular updates and whatnot probably aren't ready to change over.

With GNOME Software, there's a way to do OS release upgrades by triggering the offline updates mechanism, and I'd like to see if we can do that for Plasma Discover too.

I see, this is ad-hoc for upgrades. I still think it would make sense to have most of the system upgrades offline.

Usually such specific tasks are done more comfortably from a distro-specific app with its status notifier. What kind of integration would you like to see in discover beyond the "press here to upgrade to Fedora N"?

Well, patches welcome I guess. If you want to know how to do that, I'll be happy to answer.

It seems like @rdieter has started working on having offline updates enabled for even regular updates for Fedora 34, so I guess we should start planning for offline system upgrades for F34 too...

Metadata Update from @ngompa:
- Issue set to the milestone: Fedora 34 (was: Future Release)

2 years ago

@bcotton put this in the Fedora 34 Final Blocker Review email last week:

2. LiveCD - KDE — https://bugzilla.redhat.com/show_bug.cgi?id=1939751 — NEW
KDE live image shows update notifications

Discover shows that updates are available, which live images are not
supposed to do. I looks like we need to remove plasma-discover in the
kickstart for KDE Live the way we've previously done for

@rdieter what does this mean?

Metadata Update from @siosm:
- Issue tagged with: meeting

2 years ago

Metadata Update from @siosm:
- Issue untagged with: meeting

2 years ago

At this point, we've got basic offline updates in place for Fedora Linux 34. The remaining thing to do here is to get Discover extended to support the same offline full system upgrade workflow that exists in GNOME Software. We've discussed in today's meeting and @siosm will work on implementing this, since he's already working in Discover for Kinoite work.

Metadata Update from @ngompa:
- Issue assigned to siosm
- Issue set to the milestone: Fedora 35 (was: Fedora 34)

2 years ago

What workflow is this?

@apol It's the workflow for notifying the user and triggering a system upgrade from one Fedora release to the next. This is something that exists in GNOME Software and people have asked us to have this in the KDE spin through Discover somehow.

Metadata Update from @ngompa:
- Issue set to the milestone: Future Release (was: Fedora 35)

a year ago

Metadata Update from @ngompa:
- Issue tagged with: meeting

a year ago

Some notes from @mcrha on how this works in GNOME Software:

Just call functions from the pk-offline.h; if I'm not mistaken, then:

pk_offline_get_prepared_ids() to see whether there are prepared updates:

pk_offline_trigger_with_flags() to prepare the update (aka to download it):

pk_offline_trigger_upgrade_with_flags() to execute the upgrade (that's under
the 'Restart & Update'):

Note these functions are wrapped in the gnome-software, because there
had been done a change on the PackageKit side, which the API may not
have covered, thus there are done direct D-Bus calls when the
PackageKit API is not new enough.

@siosm Is there any improvements on this?

Ping here. I would appreciate if someone could review my new package above. Thanks!

Metadata Update from @siosm:
- Issue untagged with: meeting

8 months ago

It's now in F36 so I'll make Discover recommend it.

Can you explain to me how that will work? It will be useful to understand how our users experience it in Fedora.

@siosm I have a question as well:
does this means that on Fedora 36 Discover will already be able to notify me of Fedora 37 and to perform the upgrade entirely thru the discovery GUI?

This adds the metadata needed for Discover to know if the release is EOL or if a newer one is available.

I have not looked at the code in Discover yet that does the upgrade to see if this works.

I'm considering migrating a few machines into Fedora KDE but i'm depending on this feature, (because one of the main reasons to do so is for the machine users to get some independence and be able to perform such upgrades with no expertise requirement)
I do not want to move into this if i have to manually perform the upgrade later via CLI.

I would like to ask one question @siosm (sorry for so many questions, you can reply when you get time for it):

Is this something that we can hope for Fedora 36? Or will it be only for 37 or some later version?

If you plan on getting this into 36, i could start migrating right away... tks

The Fedora Project is a community project. Changes happen when contributors make them happen. This issue is explicitly labelled Future Release. If you're interested in contributing support for that in Discover, feel free to start working on it and we can collaborate to make it happen.

Login to comment on this ticket.