Fake Frame on arm64: use Valve's Holo Core image, and show failed builds

The menci/archlinuxarm base failed `pacman -Syu` on GitHub's arm64 runner.
Valve's Holo Core aarch64 preview is the base the Frame's SteamOS is built on,
the iPhone app's frame-container already uses it, and its repos carry every
package the fake needs. A failed image build now reruns with the full log.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
saphidandClaude Opus 5.5 committed 2026-09-27 18:16:20 +10:00
1 parent 19b9bc2dbe
commit e1d138470f
3 files changed
+11 -7

No files matched your search

+6 -4
View File
@@ -6,7 +6,7 @@
# harness itself didn't come up). See docs/testing.md.
#
# Usage: scripts/e2e.sh [TEST...] e.g. scripts/e2e.sh test_titles test_faults.Faults.test_disk_full
# Env: FAKEFRAME_BASE base image (default: archlinux:base, or menci/archlinuxarm:base on arm64)
# Env: FAKEFRAME_BASE base image (default: archlinux:base, or Valve's Holo Core aarch64 on arm64)
# FAKEFRAME_KEEP=1 leave the containers running afterwards
set -uo pipefail
@@ -14,7 +14,7 @@ root=${0:A:h:h}
cd "$root" || exit 2
case $(uname -m) in
x86_64|amd64) base=archlinux:base ;;
aarch64|arm64) base=menci/archlinuxarm:base ;;
aarch64|arm64) base=registry.gitlab.steamos.cloud/holo/holo-core-aarch64-preview/base-devel:latest ;;
*) print -u2 "No Arch Linux base image known for $(uname -m); set FAKEFRAME_BASE"; exit 2 ;;
esac
base=${FAKEFRAME_BASE:-$base}
@@ -22,8 +22,10 @@ compose=(docker compose -p fakeframe-e2e -f tests/fakeframe/compose.yaml)
started=$SECONDS
print "==> Building fakeframe-frame (from $base) and fakeframe-host"
docker build -q --build-arg BASE="$base" -t fakeframe-frame -f tests/fakeframe/Containerfile tests/fakeframe || exit 2
docker build -q -t fakeframe-host -f tests/fakeframe/host.Containerfile tests/fakeframe || exit 2
# Quiet when it works; if a build fails, build again with the full log so CI shows why.
build() { docker build -q "$@" >/dev/null || { docker build --progress=plain "$@"; exit 2 } }
build --build-arg BASE="$base" -t fakeframe-frame -f tests/fakeframe/Containerfile tests/fakeframe
build -t fakeframe-host -f tests/fakeframe/host.Containerfile tests/fakeframe
logs() {
print "\n==> Fake Frame logs"