build / build (push) Successful in 30m42s
- build-packages.sh rebuilds a package only when its srcpkgs/ directory changed, its binary package is missing, or a dry-run install finds a shared library Void no longer provides; DASOS_REBUILD=1 rebuilds all. An unchanged `make packages` takes 20 s instead of 17 min on the CI host - ci/release.sh publishes both ISOs and SHA256SUMS as a Gitea release when the workflow runs for a v* tag matching VERSION - README and TODO updated Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
23 lines
772 B
Bash
Executable File
23 lines
772 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Runs a command inside the Void Linux builder container.
|
|
# The project is mounted at /work; downloaded packages are cached in out/cache/xbps.
|
|
# DASOS_OUT puts out/ elsewhere (CI keeps it between checkouts).
|
|
set -euo pipefail
|
|
|
|
root=$(cd "$(dirname "$0")/.." && pwd)
|
|
out=${DASOS_OUT:-$root/out}
|
|
image=dasos-builder
|
|
|
|
docker build --quiet --tag "$image" "$root/docker/builder" >/dev/null
|
|
mkdir -p "$out/cache/xbps"
|
|
|
|
# --privileged: mklive mounts /proc, /sys, /dev and a loop device for the root image
|
|
exec docker run --rm --privileged \
|
|
--volume "$root:/work" \
|
|
${DASOS_OUT:+--volume "$out:/work/out"} \
|
|
--volume "$out/cache/xbps:/var/cache/xbps" \
|
|
--env HOST_UID="$(id -u)" \
|
|
--env HOST_GID="$(id -g)" \
|
|
--env DASOS_REBUILD \
|
|
"$image" "$@"
|