HowTo: Rebase to a uBlue image from Fedora

Somehow the full instructions are not easy to find, so here is another source how to do this.

Some images don’t have an installer, like the COSMIC variant, or the ISO is outdated.

:warning: NOTE
This process may not always work.
When switching from a known good image to another one, use this command to permanently save the known good image, before running other commands:
sudo ostree admin pin 0

1. Install a Fedora image

Install the image most similar to it from Fedora, in the case of cosmic-silverblue (the recommended one I think) it is Fedora Silverblue

Silverblue-specific you need to do the whole setup and go into a GUI session, other desktops have the complete Anaconda installer settings and you can exit to a TTY on the initial login screen.

This avoids loading a bunch of desktop configs into your user account, like KDE or GNOME icons, which would cause visual issues on other desktops.

2. Rebase to unsigned

Here you can find the names of all uBlue images

rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/IMAGENAME:VERSION

For image names see above. Versions can often be latest, sometimes lts, and the latest Fedora version (like 41) always works.

Example:

rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/cosmic-silverblue:41

Reboot afterwards. You can add --reboot to the command to do it automatically.

3. Rebase to the signed image

This only works for signed containers, uBlue uses cosign:

rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/IMAGENAME:VERSION

Now you are on a signed uBlue image.

2 Likes

Nice guide, though number 3 is numbered as 2 there.

As a note, if you do rebase to ublue, there may be issues rebasing back to Fedora. I think the main issue was Bazzite, as I’ve once rebased from Aurora, to Bazzite, then back to Aurora which resulted in a black screen when I rebooted.

I’m sure it’s just something in the config that I could revert, but be careful nonetheless. Just because the OS is Atomic, doesn’t mean everything in the OS is Atomic.

Yeah it should also be noted that we don’t support this.