Installer ISO via bootc-image-builder, distributed on Cloudflare R2 #1

Open
opened 2026-07-09 11:07:44 +00:00 by james.oates · 0 comments
Owner

Build a bootable Anaconda installer ISO so Glarion installs directly onto blank hardware — no prior Fedora/Kinoite install required.

Plan document (source of truth): Obsidian vault, Personal/Projects/glarion/plans/2026-07-09-installer-iso.md.

Checklist:

  • .github/workflows/build-iso.yml (workflow_dispatch only, matching existing workflow style)
  • ISO built via bootc-image-builder from ghcr.io/glarion-os/glarion:latest (verify current invocation against upstream docs) — 6.2G, run 29085707859
  • SHA256SUMS generated alongside the ISO
  • Upload to Cloudflare R2 (S3 API; secrets mastered in Infisical glarion/prod, mirrored to GitHub Actions secrets) — bucket glarion (WEUR), public URL https://pub-27e8de4c5aa14382b04372b8f9be06a2.r2.dev, verified end-to-end (run 29094502491)
  • README "Fresh install" section (download URL, checksum verification, Secure Boot note, unattended-wipe warning)
  • Optional qcow2 build for VM smoke-testing (implemented as a workflow_dispatch input; not yet exercised)
  • Validated by booting on real hardware

Notes:

  • The anaconda-iso type is an unattended fire-and-forget installer: it erases the first disk found and installs without prompting. README carries a warning.
  • ISO 6.2G + qcow2 in the bucket together exceed the 10GB R2 free tier; overage is ~$0.015/GB-month (pennies) — delete the qcow2 after VM testing.
  • A try-before-buy live USB (OS runs from the stick, no install) is out of scope for bootc-image-builder; ublue's Titanoboa builds live ISOs from bootc images — candidate follow-up issue.
Build a bootable Anaconda installer ISO so Glarion installs directly onto blank hardware — no prior Fedora/Kinoite install required. Plan document (source of truth): Obsidian vault, `Personal/Projects/glarion/plans/2026-07-09-installer-iso.md`. Checklist: - [x] `.github/workflows/build-iso.yml` (workflow_dispatch only, matching existing workflow style) - [x] ISO built via bootc-image-builder from `ghcr.io/glarion-os/glarion:latest` (verify current invocation against upstream docs) — 6.2G, run 29085707859 - [x] `SHA256SUMS` generated alongside the ISO - [x] Upload to Cloudflare R2 (S3 API; secrets mastered in Infisical `glarion/prod`, mirrored to GitHub Actions secrets) — bucket `glarion` (WEUR), public URL https://pub-27e8de4c5aa14382b04372b8f9be06a2.r2.dev, verified end-to-end (run 29094502491) - [x] README "Fresh install" section (download URL, checksum verification, Secure Boot note, unattended-wipe warning) - [ ] Optional qcow2 build for VM smoke-testing (implemented as a workflow_dispatch input; not yet exercised) - [ ] Validated by booting on real hardware Notes: - The anaconda-iso type is an unattended fire-and-forget installer: it erases the first disk found and installs without prompting. README carries a warning. - ISO 6.2G + qcow2 in the bucket together exceed the 10GB R2 free tier; overage is ~$0.015/GB-month (pennies) — delete the qcow2 after VM testing. - A try-before-buy live USB (OS runs from the stick, no install) is out of scope for bootc-image-builder; ublue's Titanoboa builds live ISOs from bootc images — candidate follow-up issue.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Glarion/glarion#1
No description provided.