How terracotta-linux/terracotta-iso works
Terracotta ISO assembles prebuilt Terracotta releases and an Arch Linux base into a UEFI bootable live/install image. The main path is package fetching, local repository creation, profile-based image assembly, then live boot and installer handoff. The README documents update-triggered releases and boot networking; source excerpts were unavailable, so links reflect documented relationships only.
Main entry points: build.sh Build entrypoint · profile Archiso profile · daily-update-check.yml Update check · fetch-packages.sh Package fetcher
Components 21
ISO assembly
- Build entrypoint
build.sh - Package fetcher
fetch-packages.sh - Local pacman repo
- Image assembler
- Bootable ISO
Boot profile
- Archiso profile
profile - Package selection
profile/packages.x86_64 - Pacman config
profile/pacman.conf - Profile definition
profile/profiledef.sh - Live root config
profile/airootfs - UEFI GRUB config
profile/grub/grub.cfg
Live experience
- Live boot
profile - Network setup
profile/airootfs/etc/systemd - Network UI
profile/packages.x86_64 - Terracotta installer
Release automation
- Update check
.github/workflows/daily-update-check.yml - Important packages
.github/important-packages.json - Release workflow
.github/workflows/release-iso.yml
Other components
- Maintainer
- Terracotta releases
- GitHub releases
Connections 23
- Maintainer → Build entrypoint: runs
- Build entrypoint → Package fetcher: invokes
- Package fetcher → Terracotta releases: downloads packages
- Package fetcher → Local pacman repo: builds repository
- Build entrypoint → Image assembler: invokes
- Build entrypoint → Archiso profile: passes profile
- Build entrypoint → Pacman config: passes config
- Image assembler → Local pacman repo: installs packages
- Image assembler → Archiso profile: reads
- Image assembler → Bootable ISO: produces
- Archiso profile → Package selection: defines packages
- Archiso profile → Profile definition: defines profile
- Archiso profile → Live root config: includes root config
- Archiso profile → UEFI GRUB config: includes boot config
- Bootable ISO → Live boot: boots
- Live boot → Network setup: starts networking
- Live boot → Terracotta installer: hands off
- Network setup → Network UI: offers if disconnected
- Update check → Important packages: checks versions
- Update check → Terracotta releases: checks releases
- Update check → Release workflow: triggers when updated
- Release workflow → Build entrypoint: builds ISO
- Release workflow → GitHub releases: publishes release