Skip to main content

max / alloy_tui

Bump base to fedora-bootc:42 ublue-os/staging COPR no longer builds for fedora-41 (only 42+ and rawhide). Bumping the base along with the ecosystem. STACK.md and IMAGE.md references updated to :42.
Co-Authored-By
Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-07-04 15:52 UTC
Signed with PGP, not checked
Commit: 72585a3d8a30b2fb6e3cf1d3880fc993c2338aab
Parent: 81c74ea
3 files changed, +8 insertions, -8 deletions
M Containerfile +2 -2
@@ -7,7 +7,7 @@
7 7 # then package installs (change with STACK.md), then config tree
8 8 # (changes most often, so lives at the tail).
9 9
10 - FROM quay.io/fedora/fedora-bootc:41
10 + FROM quay.io/fedora/fedora-bootc:42
11 11
12 12 # =====================================================================
13 13 # Third-party repos
@@ -116,7 +116,7 @@
116 116 # =====================================================================
117 117 # Package removals — stock desktop pieces Alloy replaces
118 118 # =====================================================================
119 - # fedora-bootc:41 is minimal and probably ships none of these, but keep
119 + # fedora-bootc:42 is minimal and probably ships none of these, but keep
120 120 # the remove line for safety in case the base grows. || true swallows
121 121 # the "package not installed" error path.
122 122 RUN dnf remove -y \
M docs/IMAGE.md +5 -5
@@ -26,7 +26,7 @@
26 26
27 27 Universal Blue's convention is exactly the bootc + Containerfile pattern above, using `FROM ghcr.io/ublue-os/main`. Battle-tested. But being downstream of ublue means inheriting ublue's opinions and coupling to their release cadence, which [STACK.md's Base section](STACK.md#base) explicitly rejects.
28 28
29 - **The nuance:** Alloy uses the ublue-style *convention* (Containerfile, OCI registry, CI-driven build) *without* using ublue's base image. `FROM quay.io/fedora/fedora-bootc:41`, not `FROM ghcr.io/ublue-os/main`. That's what "alongside ublue, not downstream" resolves to in practice.
29 + **The nuance:** Alloy uses the ublue-style *convention* (Containerfile, OCI registry, CI-driven build) *without* using ublue's base image. `FROM quay.io/fedora/fedora-bootc:42`, not `FROM ghcr.io/ublue-os/main`. That's what "alongside ublue, not downstream" resolves to in practice.
30 30
31 31 ### "Install Silverblue and run our script" (non-option)
32 32
@@ -50,7 +50,7 @@
50 50
51 51 ### Registry: `quay.io` (deferred until distribution starts)
52 52
53 - Red Hat's container registry is the intended destination once Alloy has an image worth distributing. Free for public images, ecosystem-coherent with the `quay.io/fedora/fedora-bootc:41` base.
53 + Red Hat's container registry is the intended destination once Alloy has an image worth distributing. Free for public images, ecosystem-coherent with the `quay.io/fedora/fedora-bootc:42` base.
54 54
55 55 **Current state:** no registry provisioned. `.builds/alloy-image.yml` runs a **build + lint smoke test** only — validates the Containerfile on every push, without publishing anywhere. When the image is worth distributing, the CI file grows back `sign` and `push` tasks and `quay.io/alloy/alloy` gets provisioned with a robot account.
56 56
@@ -64,7 +64,7 @@
64 64
65 65 The Containerfile at the repo root (see `Containerfile`) sketches:
66 66
67 - 1. **Base:** `FROM quay.io/fedora/fedora-bootc:41`.
67 + 1. **Base:** `FROM quay.io/fedora/fedora-bootc:42`.
68 68 2. **Third-party repos:** Tailscale, any COPRs Alloy depends on for packages not in Fedora main.
69 69 3. **Package additions:** the full Alloy stack from [STACK.md](STACK.md) — compositor, bar, launcher, notifications, terminal, editor, shell, viewers, utilities, continuity daemons, fonts, themes.
70 70 4. **Package removals:** stock Silverblue desktop pieces Alloy replaces (gnome-shell, gdm — the latter gated on the greeter pick).
@@ -86,7 +86,7 @@
86 86
87 87 ## Fedora version tracking
88 88
89 - Pinned to `:41` explicitly. Bumps to `:42` are a deliberate act — Alloy tests the new base, updates the Containerfile, ships. Not automatic. This is the "correctness over deadline" pattern applied to base tracking.
89 + Pinned to `:42` explicitly. Bumps to `:43` and beyond are a deliberate act — Alloy tests the new base, updates the Containerfile, ships. Not automatic. This is the "correctness over deadline" pattern applied to base tracking.
90 90
91 91 ## Open questions
92 92
@@ -94,4 +94,4 @@
94 94 - [ ] `bootc-image-builder` for ISO generation. First-time-user path is `bootc install` from a live environment; the ISO is what makes that a smooth experience. Verify the ISO builder handles Alloy's specific package set.
95 95 - [ ] Single-stage vs. multi-stage Containerfile. Single-stage until rebuild time hurts.
96 96 - [x] sr.ht account: **`~maxmj`** for v0. LLC-owned `~makecreative` remains the long-term target; migration if/when the project grows.
97 - - [ ] Whether to publish `:latest`, `:41`, and `:41-YYYYMMDD` tags. Recommend all three — `:latest` for casual users, `:41` for version-pinned users, `:41-YYYYMMDD` for reproducibility.
97 + - [ ] Whether to publish `:latest`, `:42`, and `:42-YYYYMMDD` tags. Recommend all three — `:latest` for casual users, `:42` for version-pinned users, `:42-YYYYMMDD` for reproducibility.
M docs/STACK.md +1 -1
@@ -8,7 +8,7 @@
8 8
9 9 **ublue relationship: alongside, not downstream.** Preserves naming and architectural independence. The "Alloy" name was picked specifically to avoid the ublue "Blue\*" prefix. Tradeoff: no shared image-building infrastructure — whatever Alloy ships for image composition is on Alloy to build/maintain. Upside: total architectural freedom and a clean brand.
10 10
11 - **Composition strategy:** bootc + Containerfile, `FROM quay.io/fedora/fedora-bootc:41`. Source on `git.sr.ht/~maxmj/alloy`, CI on `builds.sr.ht`, published container image on `quay.io/alloy/alloy`. This is the ublue *convention* (Containerfile, OCI registry, CI-driven build) without ublue's base image — which is what "alongside ublue" resolves to in practice. Full delivery strategy and open questions in [IMAGE.md](IMAGE.md). Containerfile at the repo root; sr.ht CI at `.builds/alloy-image.yml`.
11 + **Composition strategy:** bootc + Containerfile, `FROM quay.io/fedora/fedora-bootc:42`. Source on `git.sr.ht/~maxmj/alloy`, CI on `builds.sr.ht`, published container image on `quay.io/alloy/alloy`. This is the ublue *convention* (Containerfile, OCI registry, CI-driven build) without ublue's base image — which is what "alongside ublue" resolves to in practice. Full delivery strategy and open questions in [IMAGE.md](IMAGE.md). Containerfile at the repo root; sr.ht CI at `.builds/alloy-image.yml`.
12 12
13 13 ## Compositor
14 14