Bootc explanation

If I change the base image, for example, to fedora-bootc, what will change and what will remain?
Can I change the base bluefin image using os -tree or will it change the fedora-silverblue image?
And if it is possible to change the bluefin image what are the consequences?

Full disclosure: this is based on my understanding and experience, I’ve only been at this for 2-3 years.

If you change to “fedora-bootc”, you will have its default system packages and system settings (that includes DE ones, so be careful as DE settings may conflict on system or user level). Your layered packages, /etc files you have modified, and things in /var will remain. By extrapolation, in case like /nix folder where it is actually just nix folder somewhere in /var that is mounted by a systemd service, will survive.

Of course, doing “weird stuff” like that can raise the chance of a failure when rebasing, especially when rebasing “upstream” rather than “downstream” or to a very different update track, due to things being set up automatically for the config, packages, and folder setup of the bootc you were using before. This is why it is recommended to unlayer packages first before rebasing, and then relayer them later.

If you want to change the bluefin image, if it is very drastic, I would recommend using the image-template or blue-build, and then clean reinstalling. In my experience, it was safe when I was rebasing from normal Bazzite to my own personal Bazzite images, but I failed to get into the DE when I was rebasing from Bazzite to Bluefin. I think going between Bazzite and Aurora was okay, but I cannot recall the detail. If I’m doing things that is more than adding rpm packages and some files to /bin or /etc manually in the repo, I’d prepare for a reinstall just in case.

1 Like

you mean rpm-ostree packages?

Yeah, rpm-ostree. Or dnf, if you use that.

1 Like