Files
Your Name 74f978b1bb bazzite: replace dnf shell wrapper with dnf5 symlink
Bazzite's /usr/bin/dnf is a 1KB bash wrapper that intercepts install/remove
args and prints a docs URL pointing at rpm-ostree unless it detects a
container or a dev-mode ostree deployment. Our kexec-booted install has
neither: the image build wipes /sysroot/ostree/deploy/ + masks
rpm-ostreed, so dnf install <anything> prints the URL and exits 1.
Since ostree is gone the guard has no purpose here; point dnf at dnf5
directly so 'dnf install linux-ps5' works Fedora-style.
2026-07-03 13:48:40 -04:00
..

bazzite / bazzite-deck

Adds support for Bazzite (uBlue's gaming-focused atomic Fedora) and Bazzite-Deck (Steam Deck UI variant) on PS5 hardware.

These are OCI atomic images — distrobuilder doesn't apply. distros/bazzite/build-rootfs.sh runs in place of the distrobuilder call:

  1. skopeo copy docker://ghcr.io/ublue-os/bazzite:stable → OCI archive
  2. umoci unpack → flat rootfs into $CHROOT
  3. Promote /usr/etc defaults into /etc
  4. Install the linux-ps5 RPM via rpm-ostree/dnf, then mask the rpm-ostree services (we're a flat fs now)
  5. Set up grow-rootfs systemd unit + DTM-TA-race amdgpu reprobe udev rule

bazzite-deck is built from ghcr.io/ublue-os/bazzite-deck:stable via the same script (the case "$DISTRO" in bazzite-*) branch generates the OCI reference automatically). All distros/bazzite-deck/* files are symlinks into distros/bazzite/.

Build locally

./build_image.sh --distro bazzite
./build_image.sh --distro bazzite-deck

Image size bumped to 24 GB (default). Compressed output is large (~3-5 GB .img.xz) — too big for a 2 GB GitHub release asset, so this image is not auto-published by the CI workflow.