mkarchiso against the host repos fails on Manjaro (no archinstall/ reflector, linux is a virtual package) — releng needs real Arch repos. Split the profile assembly into build-inner.sh and run it in archlinux:latest (--privileged for pacstrap's bind mounts); verified build on the Manjaro workstation. gitignore the ISO output dir. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
22 lines
685 B
Bash
Executable File
22 lines
685 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Build the edge-host installer ISO inside an Arch container.
|
|
# Building must happen against real Arch repos — a Manjaro (or any
|
|
# non-Arch) host can't feed mkarchiso, so the container is the default
|
|
# and only path. Needs docker; --privileged because pacstrap bind-mounts
|
|
# into the chroot.
|
|
# ./build.sh [output-dir]
|
|
set -euo pipefail
|
|
|
|
here="$(cd "$(dirname "$0")" && pwd)"
|
|
out="${1:-$here/out}"
|
|
mkdir -p "$out"
|
|
|
|
docker run --rm --privileged \
|
|
-v "$here:/src:ro" \
|
|
-v "$out:/out" \
|
|
archlinux:latest /src/build-inner.sh
|
|
|
|
echo
|
|
echo "ISO in $out — write it with:"
|
|
echo " sudo sh -c 'cp $out/edge-host-*.iso /dev/sdX && sync' # USB stick, NOT the NVMe"
|