🏡 index : quine-global-labs/quine-linux.git

quine-linux

Quine distro of Linux based on uBlue Aurora

Building

The image is built in two repos:

Like Aurora, there's one installer: the live ISO's. There's no separate install ISO.

Taskfile.yml (requires task) is the supported way to drive all of this — run task with no arguments to list what's available. Notably:

Equivalently, by hand:

sudo podman build -t quine-linux -f Containerfile .

To build the Aurora fork yourself (Linux, with buildah, cpp, just >= 1.46, skopeo, jq, yq and cosign), in a clone of quine-global-labs/aurora:

sudo just build --image aurora --tag stable --flavor main   # -> localhost/aurora:stable

An ISO can then be generated from the built image with bootc-image-builder (ghcr.io/osbuild/bootc-image-builder; the project now lives in osbuild/image-builder, and the old quay.io/centos-bootc/bootc-image-builder image is no longer updated).

overlay/

Files here mirror their path on the root filesystem and are baked into the image via COPY overlay/ / in the Containerfile.

overlay/etc/gitconfig

System-wide git config so every user on the box gets main as the default init branch, not master.

overlay/etc/systemd/system/rpm-ostree-cleanup.{service,timer}

Weekly, runs as root via systemd (not cron/sudoers): rpm-ostree cleanup -rb (drops rollback deployment and any pending deployment). Enabled at build time via RUN systemctl enable in the Containerfile.

overlay/etc/systemd/journald.conf.d/size-cap.conf

Continuous 500M journal retention cap instead of a periodic vacuum job.

overlay/usr/lib/systemd/user/disk-cleanup.{service,timer}

Weekly, runs as the user, no privilege needed: podman system prune -af, flatpak uninstall --unused -y, clears ~/.cache. Auto-enabled for every user via overlay/usr/lib/systemd/user-preset/90-quine-linux.preset — no manual systemctl --user enable needed.

overlay/etc/systemd/system/cs8409-intmike-power-fixup.service

Hardware-specific fixup for the iMac19,2 internal mic (see below).

Hardware-specific patches

docs/ and patches/ hold write-ups and out-of-tree kernel module patches for hardware quirks on the machines this image runs on, that don't fit anywhere else in this repo:

Software fork directions

Write-ups of problems found on this image that point at a fork/patch of an upstream project, kept here before anyone's had time to act on them: