Replaces the Fedora DVD/netinst base with a live-ISO boot chain (root=live:CDLABEL=Fedora-Cinn-Live-44 rd.live.image instead of inst.stage2=/inst.ks=), implementing ADR-0003. The GRUB menu now offers two entries booting the same live image with a tuxflotte.mode=auto/interactive kernel cmdline flag instead of a boot-time kickstart URL - installer.sh will read this flag once it runs inside the live session. scripts/build.sh and scripts/extract.sh now extract the source ISO via `xorriso -osirrox` instead of a loop mount, removing the sudo dependency for local builds. Verified end-to-end in QEMU/KVM: GRUB menu renders both entries, kernel/initrd load correctly, boot proceeds to the live session.
31 lines
602 B
Bash
Executable File
31 lines
602 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
if [[ $# -ne 1 ]]; then
|
|
echo "Usage: $0 /path/to/source.iso"
|
|
exit 1
|
|
fi
|
|
|
|
SOURCE_ISO="$1"
|
|
|
|
if [[ ! -f "$SOURCE_ISO" ]]; then
|
|
echo "Error: ISO not found: $SOURCE_ISO"
|
|
exit 1
|
|
fi
|
|
|
|
REPO_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
BASE_DIR="$(cd "$REPO_DIR/.." && pwd)"
|
|
BUILD_DIR="$BASE_DIR/build"
|
|
WORK_DIR="$BUILD_DIR/work"
|
|
|
|
echo "Source ISO: $SOURCE_ISO"
|
|
echo "Work dir: $WORK_DIR"
|
|
|
|
rm -rf "$WORK_DIR"
|
|
mkdir -p "$WORK_DIR"
|
|
|
|
echo "Extracting ISO contents..."
|
|
xorriso -indev "$SOURCE_ISO" -osirrox on -extract / "$WORK_DIR" >/dev/null
|
|
|
|
echo "Done."
|