diff --git a/test/acceptance.d/system-test.sh b/test/acceptance.d/system-test.sh index 610fcb4b..0d648e9c 100644 --- a/test/acceptance.d/system-test.sh +++ b/test/acceptance.d/system-test.sh @@ -8,12 +8,17 @@ status=0 verify_core_packages() { local package + local manifest="$OMARCHY_PATH/install/omarchy-base.packages" local -a missing=() + # Without this, a missing manifest reads as an empty package list and the + # audit passes having checked nothing. + [[ -f $manifest ]] || fail "all Omarchy core packages are installed" "package manifest not found: $manifest" + while IFS= read -r package; do [[ -z $package || $package == \#* ]] && continue pacman -Q "$package" >/dev/null 2>&1 || missing+=("$package") - done <"$OMARCHY_PATH/install/omarchy-base.packages" + done <"$manifest" (( ${#missing[@]} == 0 )) || fail "all Omarchy core packages are installed" "missing packages: ${missing[*]}" pass "all Omarchy core packages are installed (${#missing[@]} missing)"