Scaffold the Arcline OS build system ("the wires"): a transparent,
auditable pipeline that turns a Debian bookworm base into hardened OS
images for the server, workstation, and cloud editions.
- Makefile orchestrates everything (make iso-<edition>, check, test,
toolchain, clean); versions.mk is the single source of truth for
versions and paths.
- scripts/ is the plain-bash pipeline: debootstrap -> install packages
-> apply overlays -> in-chroot configure -> live ISO, plus a rootfs
archive along the way.
- ARCLINE_TOOLCHAIN=auto|skip|require controls whether the 11 Go tools
are bundled into an image (auto by default; minimal builds available
via make iso-<edition>-minimal).
- GPL-3.0 licensed, sponsored by Arcline IT LLC.
28 lines
1.1 KiB
Bash
Executable File
28 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# ─────────────────────────────────────────────────────────────────────────────
|
|
# Arcline OS — edition build orchestrator
|
|
#
|
|
# scripts/build-edition.sh <edition> <stage>
|
|
# stage: rootfs | iso
|
|
#
|
|
# Thin dispatcher so the Makefile can stay dumb.
|
|
# ─────────────────────────────────────────────────────────────────────────────
|
|
set -euo pipefail
|
|
source "$(dirname "${BASH_SOURCE[0]}")/common.sh"
|
|
|
|
EDITION="${1:?usage: build-edition.sh <edition> <rootfs|iso>}"
|
|
STAGE="${2:?usage: build-edition.sh <edition> <rootfs|iso>}"
|
|
validate_edition "$EDITION"
|
|
|
|
case "$STAGE" in
|
|
rootfs)
|
|
"$ROOT/scripts/build-rootfs.sh" "$EDITION"
|
|
;;
|
|
iso)
|
|
"$ROOT/scripts/build-iso.sh" "$EDITION"
|
|
;;
|
|
*)
|
|
die "unknown stage '$STAGE' (expected: rootfs | iso)"
|
|
;;
|
|
esac
|