How to rebase to Fedora Linux 38 on Silverblue

Fedora Silverblue is an operating system for your desktop built on Fedora Linux. It’s excellent for daily use, development, and container-based workflows. It offers numerous advantages such as being able to roll back in case of any problems. If you want to update or rebase to Fedora Linux 38 on your Fedora Silverblue system (these instructions are similar for Fedora Kinoite), this article tells you how. It not only shows you what to do, but also how to revert things if something unforeseen happens.

Update your existing system

Prior to actually doing the rebase to Fedora Linux 38, you should apply any pending updates. Enter the following in the terminal:

$ rpm-ostree update

or install updates through GNOME Software and reboot.

Rebasing using GNOME Software

GNOME Software shows you that there is new version of Fedora Linux available on the Updates screen.

Fedora 38 update available

First thing you need to do is download the new image, so click on the Download button. This will take some time. When it’s done you will see that the update is ready to install.

Fedora 38 update ready to install

Click on the Restart & Upgrade button. This step will take only a few moments and the computer will be restarted when the update is completed. After the restart you will end up in new and shiny release of Fedora Linux 38. Easy, isn’t it?

Rebasing using terminal

If you prefer to do everything in a terminal, then this part of the guide is for you.

Rebasing to Fedora Linux 38 using the terminal is easy. First, check if the 38 branch is available:

$ ostree remote refs fedora

You should see the following in the output:

fedora:fedora/38/x86_64/silverblue

If you want to pin the current deployment (meaning that this deployment will stay as an option in GRUB until you remove it), you can do it by running:

# 0 is entry position in rpm-ostree status
$ sudo ostree admin pin 0

To remove the pinned deployment use the following command:

# 2 is entry position in rpm-ostree status
$ sudo ostree admin pin --unpin 2

Next, rebase your system to the Fedora Linux 38 branch.

$ rpm-ostree rebase fedora:fedora/38/x86_64/silverblue

Finally, the last thing to do is restart your computer and boot to Fedora Linux 38.

How to roll back

If anything bad happens—for instance, if you can’t boot to Fedora Linux 38 at all—it’s easy to go back. At boot time, pick the entry in the GRUB menu for the version prior to Fedora Linux 38 and your system will start in that previous version rather than Fedora Linux 38. If you don’t see the GRUB menu, try to press ESC during boot. To make the change to the previous version permanent, use the following command:

$ rpm-ostree rollback

That’s it. Now you know how to rebase Fedora Silverblue to Fedora Linux 38 and roll back. So why not do it today?

FAQ

Because there are similar questions in comments for each article about rebasing to newer version of Silverblue I will try to answer them in this section.

Question: Can I skip versions during rebase of Fedora? For example from Fedora 36 Silverblue to Fedora 38 Silverblue?

Answer: Although it could be sometimes possible to skip versions during rebase, it is not recommended. You should always update to one version above (37->38 for example) to avoid unnecessary errors.

Question: I have rpm-fusion layered and I got errors during rebase. How should I do the rebase?

Answer: If you have rpm-fusion layered on your Silverblue installation, you should do the following before rebase:

rpm-ostree update --uninstall rpmfusion-free-release --uninstall rpmfusion-nonfree-release --install rpmfusion-free-release --install rpmfusion-nonfree-release

New in Fedora Using Software

37 Comments

  1. Maxime

    I tried the command-line rebasing and it works like a charm ! I decided to switch to Fedora Silverblue because I had a problem last fall with the upgrade from Fedora Workstation 36 to Fedora Workstation 37 (the upgrade could not complete and I ended up in a half upgraded system). I finally managed to resolve the upgrade problem without reinstalling, but it convinced me to switch to Silverblue for the possibility of rollbacks.

    I’m very much satisfied with Fedora Silverblue, but it still have a few rough edges, particularly with Gnome Software. I would really like to be able to install upgrade in Gnome Software without automatically restarting, The upgrade would only be effective on the next reboot, but would already be installed and deployed, just like when doing “sudo rpm-ostree upgrade”. Because of that, I prefer to upgrade with the terminal. Also, please remove firefox from the base image and install the flatpak version instead.

    • Martin

      Maxime have a look at DIstrobox or Toolbox – It’s a way of running a complete Fedora 38 as a container which you can then install apps with dnf like you would on normal non SIlverblue without the reboot…

      https://distrobox.privatedns.org/

  2. René Genz

    I guess in the command on the last line the multiple ‘ ‘ (HTML tag for non-breaking space) ought to be replaced each with one empty space?

  3. You’ll have to quickly correct the RPM-fusion related command:

    bash: nbsp: command not found…

    This is a likely formatting bug when copying from a terminal into a WYSIWYG editor.

  4. Jonatas

    Hi, please fix the rpm-fusion command, it’s got escaped whitespace characters ( ) printed. It was probably copied from a webpage.

  5. Stephen P

    Heads up that F38 has a new major version of ffmpeg/libavcodec, which is supported starting in Firefox 112. Silverblue’s F38 branch still ships Firefox 111 as of the time of this comment, so H.264 video will be broken until it’s updated.

  6. Grandpa Leslie Satenstein, Montreal,Que

    I very much appreciate the information about Silverblue. Its a form of “shortened” longterm support.

    I do have a related question. “Is the future (version 40+) of Fedora going to be a “Silverblue” style of deliverable, without the daily deliverables that I have the enjoyment and custom to download, install and review.

    The last sentence should tell you that there are many of us old Fedora users who are retired, and look forward to the updates we receive on the unscheduled basis.
    .

  7. ayhc

    It might be worth pointing out that, as of this writing, Fedora Silverblue (and Kinoite) 38 have not received any updates since the 14th: https://github.com/fedora-silverblue/issue-tracker/issues/454

  8. One thing I’d love to do is have CentOS Stream as my minimal, baremetal base, and run Fedora images as my desktop (ideally an XFCE container image, but I’m willing to build that on my own). Just curious if anyone has a similar workflow or approach, because I’m planning on tackling this in the near future. I’m currently dual-booting CentOS Stream 9 and Fedora 37.

  9. Sebastian

    If you “upgrade” (rebase) to Fedora 38 the kernel will downgrade among other packages

    I recommend not to rebase, and to stay on an up to date system.

    The updated packages exist in the repos, but for an unknown reason we cant get them.

  10. Giovanni

    I was a bit confused by this article. I initially thought it was for Silverblue users that didn’t want to use Silverblue anymore and wanted to revert to “regular” Fedora Linux. Now I realize it’s about updating Silverblue itself to Fedora Silverblue 38.

  11. Cameron

    For rpm-fusion

    ´´´
    rpm-ostree override remove libavcodec-free libavfilter-free libavformat-free libavutil-free libpostproc-free libswresample-free libswscale-free –install ffmpeg –install gstreamer1-plugins-bad-freeworld –install gstreamer1-plugins-ugly –install libheif-freeworld –install pipewire-codec-aptx
    ´´´

  12. Mike Walker

    I don’t understand what the last command for rpmfusion is doing. Doesn’t it remove the rpmfusion repos and then IMMEDIATELY reinstall them? How does that work?

    • Rpm-ostree takes care of the transaction, and yes you can do both uninstall and install on the same command line. Remember on upgrades, your fetching a new (Fedora System) image that then gets your systems particular setup added to it resulting in an image locally that now reflects your system as it was but upgraded (after you reboot into it).

      • Justin

        I’m afraid I still don’t fully understand. Is this meant to be run after the rebase, but before the reboot, or at any time after the RPMFusion packages have been installed and then its good to go from that point forward?

  13. lebon

    quand on met en veille il se bloc

  14. Punky

    I just installed Fedora Kinoite and only I can say is this is great expiriance!!!!

  15. Chris Lander

    Could not rebase. Errors:
    Could not depsolve transaction; 3 problems detected:
    Problem 1: conflicting requests
    – nothing provides system-release(37) needed by rpmfusion-nonfree-release-37-1.noarch
    Problem 2: conflicting requests
    – nothing provides system-release(37) needed by rpmfusion-free-release-37-1.noarch
    Problem 3: package ffmpeg-libs-6.0-6.fc38.x86_64 conflicts with libavcodec-free provided by libavcodec-free-6.0-4.fc38.x86_64
    – package ffmpeg-6.0-6.fc38.x86_64 requires ffmpeg-libs(x86-64) = 6.0-6.fc38, but none of the providers can be installed
    – conflicting requests

    • Did you reinstalled the rpm-fusion packages as stated in the FAQ? Keep in mind, that you should reboot for the changes to take effect.

      • Chris Lander

        Yes I did, and also a reboot after. Tried more than once – but the same error.

        • In this case it usually helps to remove the conflicting package, do update and then install it again. In your case it would be probably

          ffmpeg

          package.

          • Chris lander

            Thanks, I will try

          • Chris Lander

            OK got rid of one error, but still:

            error: Could not depsolve transaction; 2 problems detected:
            Problem 1: conflicting requests
            – nothing provides system-release(37) needed by rpmfusion-nonfree-release-37-1.noarch
            Problem 2: conflicting requests
            – nothing provides system-release(37) needed by rpmfusion-free-release-37-1.noarch
            [chris@fedora ~]$

            Any idea what the problem is?

            • I would try to uninstall rpmfusion-nonfree-release and rpmfusion-free-release and then install them again after rebase. Not sure why you have this conflict, but this should help you solve it.

  16. wxy

    After the system upgrade, my edge browser won’t open and I may have a problem with my Chinese library, causing my Steam to have problems and all my Chinese disappearing. I think it might be with rmp fusion, but I don’t know how to fix it

  17. If you want to pin your current deployment, you must do so before the command to remove/reinstall rpm-fusion packages or else you’ll get “error: Cannot pin staged deployment”

    The command to unstage a deployment is:

    rpm-ostree cleanup –pending

  18. Rebase failed with error:

    error: Could not depsolve transaction; 1 problem detected:
    Problem: package ffmpeg-libs-6.0-6.fc38.x86_64 conflicts with libavcodec-free provided by libavcodec-free-6.0-4.fc38.x86_64
    – package ffmpeg-6.0-6.fc38.x86_64 requires ffmpeg-libs(x86-64) = 6.0-6.fc38, but none of the providers can be installed
    – conflicting requests

  19. Above ffmpeg error resolved via:

    rpm-ostree remove ffmpeg

  20. ds9

    Is it possible to rebase easily a Fedora 38 Silverblue installation to Workstation – without reinstalling from ISO ?
    I didn’t manage to get USB hand scanner in toolbox (I installted vendor RPM but there are some permission errors on USB devices I didn’t manage to solve).

    • Workstation is not an ostree edition of Fedora, so you need to install it from scratch. You can use Fedora Media Writer flatpak to create the bootable USB.

Comments are Closed

The opinions expressed on this website are those of each author, not of the author's employer or of Red Hat. Fedora Magazine aspires to publish all content under a Creative Commons license but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. The Fedora logo is a trademark of Red Hat, Inc. Terms and Conditions