See the BlueBuild docs for quick setup instructions for setting up your own repository based on this template.
All images are built with a selection of common packages and flatpaks. ZRAM is pre-configured to use LZ4 and from 2 x RAM up to 16 GiB as Swap space with recompression, the Virtual Memory management subsystem settings have been configured for both an increased amount of and low latency swapping. The latency improvements come at a price of a higher likelyhood of page faults because readahead has been deactivated.
NOT BUILT! It is a flavor of Bazzite for ASUS Laptops with NVIDIA GPUs.
NOT BUILT! An opinionated descendant of Aurora for my usual desktop and tinkering workflows.
Bazzite Stable for desktop gaming.
NOT BUILT! Bazzite Deck Stable for my Steam Deck clone.
My netbook still exists and is dear to me and so it is running Sway, now.
The tailscaled.service
is disabled on Aubertit, Buttgenbachit and Carbonatcyanotrichit.
The podman.service
is enabled on Borealis, Buttgenbachit and Flaviramea.
- KeepassXC
- LibreOffice
- Mozilla Firefox
- Signal
- SynologyDrive
- Warehouse
- Discord
- OpenRGB
- AusweisApp2
- BoxBuddy
- Codium
- MediaWriter
- Obsidian
- Ptyxis
- Weasis
- byobu
- htop
- kitty
- neovim
Let's have a look into some articles I've read over time. I did not do many measurements on my own, just rough observations while using my systems, especially the low memory (4 GiB) netbook I'm using for over seven years, and generally fare well with these settings. I'm choosing lz4
over zstd
as higher IOPS are - for my use cases - seemingly more important than the compression gain over either lz4 or lzo-rle
. See linked posts on Reddit and GitHub with some synthetic benchmarks of various settings.
Since before Fedora 33 raised Swap on ZRAM to default for all Spins, the systemd-zram-generator was available to configure compressed drives, including setting it up as swap. Starting with v1.2.1 the zram-generator supports configuring recompression, which allows to set secondary compression algorithms to recompress some or all of the pages on any zram drive on a trigger. For the images built from this repository the zram-recompression.timer orchestrates the trigger, and zram is configure to use both zstd
and lz4hc
to try to recompress first idle and then huge (=incompressible in zram terms) pages. I suppose it would be possible to try to recompress all pages (which are currently not marked as incompressible after actually trying to recompress those) in ZRAM, but this is currently not being used here.
- Free vs. Available Memory in Linux; August 30, 2024 by Hayden James, in Blog Linux
- Linux Performance: Almost Always Add Swap Space – Part 2: ZRAM; September 25, 2023 by Hayden James, in Blog Linux
- Tales from responsivenessland: why Linux feels slow, and how to fix that
- Tuning ZRAM in Fedora for Better Performance and Get Rid of OOM Crashes; Tue, Dec 12, 2023
Warning
This is an experimental feature, try at your own discretion.
To rebase an 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/blue-build/template:latest
- Reboot to complete the rebase:
systemctl reboot
- Then rebase to the signed image, like so:
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/blue-build/template:latest
- 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.
If build on Fedora Atomic, you can generate an offline ISO with the instructions available here. These ISOs cannot unfortunately be distributed on GitHub for free due to large sizes, so for public projects something else has to be used for hosting.
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