Upgrades and Rollbacks

Upgrading the OS

To get updates for the OS, you can run: rpm-ostree upgrade. Starting with Fedora 28, gnome-software will also offer OS updates on Silverblue systems. Note that due to the atomic nature of the OS, you will have to reboot into the new image to have the updates take effect.

If you just want to check for available updates, this command will do so: rpm-ostree upgrade --check. Starting with Fedora 28, gnome-software will also notify you about OS updates, just like it does on the traditional workstation.

Change to a new OS release

You can run: rpm-ostree rebase -b $branch and give it the name of the new OS in $branch. It can be found using rpm-ostree status and changing the version. For example, for a upgrade of Fedora 28 to Fedora 29, the command would be rpm-ostree rebase -b fedora/29/x86_64/workstation.

The process is very similar to a system update: the new OS is downloaded and installed in the background, and you just boot into it when it is ready.

Just like system updates, rebases can be reversed: the previous deployment is still available, and you can boot back into it if there are any problems with the new OS.

We plan to have gnome-software offer the same functionality in Fedora 29 as well.

Note: Due to a limitation in rpm-ostree, you will have to manually change the GPG key to the one for the new release before running rpm-ostree upgrade. To do so, use this command (as root):

ostree remote gpg-import fedora-workstation -k /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-29-primary

Rolling Back the OS

rpm-ostree keeps two deployments around, which both have an entry in the grub menu. When you boot, you can choose the other entry to boot into the previous deployment.

To permanently switch back to the previous deployment, use the rpm-ostree rollback command.

Update applications

To update your Flatpak applications, you can run: flatpak update. gnome-software will also offer Flatpak application updates. Note that Flatpaks are independent of the base system, so you can install updates without a reboot, and just restart affected applications afterwards to get the new version.

This command will let you check if application updates are available: flatpak remote-ls --updates. If you add the -d option, it will generate detailed information about the available updates:

$ flatpak remote-ls --updates -d
Ref                                                     Origin             Commit       Installed size Download size
app/com.valvesoftware.Steam/x86_64/stable               flathub            effe21b05e42   6.3 MB         4.1 MB
app/org.blender.Blender/x86_64/stable                   flathub            ac90294a1cc3 225.4 MB        79.6 MB
runtime/org.freedesktop.Platform.VAAPI.Intel/x86_64/1.6 flathub            818a1504fad1   8.7 MB         2.7 MB
runtime/org.gnome.Platform/x86_64/3.24                  flathub            6132154b089b 739.5 MB       281.4 MB
runtime/org.gnome.Platform/x86_64/3.26                  flathub            be9fe7b43711 782.5 MB       296.8 MB
runtime/org.gnome.Sdk/x86_64/3.26                       flathub            c62d5ddf669a   1.6 GB       582.9 MB
runtime/org.kde.Platform/x86_64/5.9                     flathub            ea891f4a918f   1.1 GB       391.0 MB
app/org.gnome.Builder/x86_64/master                     gnome-apps-nightly b14e6c0fc6c3 105.0 MB        35.4 MB

gnome-software will also notify you about application updates, just like it does on the normal workstation.