From 31cca48c14f9f7aa59fc20b5ca3e84dc06a8f7fb Mon Sep 17 00:00:00 2001 From: Kros Dai Date: Thu, 8 Oct 2026 16:08:59 -0400 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(build):=20refuse=20profiles?= =?UTF-8?q?=20the=20runtime=20cannot=20apply?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - :bug: profiles and the finalizer ship in separate packages, so a skewed pair would give regional targets a keyring without the repositories Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01QuATgjU4mnqpqSLAKMQ14g --- builder/build-iso.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/builder/build-iso.sh b/builder/build-iso.sh index 5007aaf..de1f7f1 100755 --- a/builder/build-iso.sh +++ b/builder/build-iso.sh @@ -209,6 +209,17 @@ cp "/configs/pacman-online-${OMARCHY_MIRROR}.conf" "$online_config" bash /builder/prepare-regions.sh "$regions_source" \ "$build_cache_dir/airootfs/usr/share/omarchy-iso" "$online_config" +# Profiles ship in the settings package, but the finalizer that applies them +# ships in the runtime. A runtime without it would ignore the region marker, +# leaving regional targets with the keyring but none of the repositories. +if [[ -n ${omarchy_pkg:-} && -d $build_cache_dir/airootfs/usr/share/omarchy-iso/regions ]]; then + runtime_listing=$(bsdtar -tf "$omarchy_pkg") + if ! grep -qx 'usr/bin/omarchy-apply-pacman' <<<"$runtime_listing"; then + echo "ERROR: $OMARCHY_SETTINGS_PACKAGE ships region profiles, but $OMARCHY_RUNTIME_PACKAGE lacks omarchy-apply-pacman to apply them." >&2 + exit 1 + fi +fi + # Collect every package we want available in the offline mirror. declare -a all_packages mapfile -t all_packages < <(