This repo builds OS images based on Fedora Atomic, using BlueBuild.
This repo contains three images
- desktop-main: Based on Fedora Sway Atomic, this OS runs on my laptop with an AMD 8840U CPU and integrated GPU.
- nvidia-main: Functionally identical to the desktop-main, this image also contains nvidia drivers and runs on my desktop PC with a nvidia GPU.
- server-main: A Fedora CoreOS based image that runs my little home server, a Wyse 5070.
There are many reasons to use atomic images, but for me the most important reasons are:
- It allows me to configure an OS that works for me in an almost declarative way, but without having to learn Nix (though, this may come at some point).
- This means I can (but also have to) include any tweak to the systems in this OS, instead of having to remember some manual change.
- It is incredibly simple to keep my machines in sync.
- I sometimes go weeks without using my desktop PC, but bringing it to the same state as my laptop is trivial by updating the atomic OS.
Theoretically, it is supposed to be possible to create an ISO from blue-build images and install them directly on a PC. In practice, I have encountered various errors, so I recommend installing a "normal" Fedora version first. One option for this is using the Fedora Media Writer and install the official Fedora Sway Atomic first.
Then, rebase the existing atomic Fedora installation to the latest build:
- First rebase to the unsigned image, to get the proper signing keys and policies installed:
rpm-ostree rebase ostree-unverified-registry:ghcr.io/crown421/desktop-os:42 - Reboot to complete the rebase:
systemctl reboot - Then rebase to the signed image, like so:
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/crown421/desktop-os:42 - Reboot again to complete the installation
systemctl reboot
The latest tag will automatically point to the latest build. That build will still always use the Fedora version specified in recipe.yml, so you won't get accidentally updated to the next major version.
These images are signed with Sigstore's cosign. You can verify the signature by downloading the cosign.pub file from this repo and running the following command:
cosign verify --key cosign.pub ghcr.io/blue-build/template