diff --git a/src/iso/build-iso-arch.sh b/src/iso/build-iso-arch.sh index 42c533e..49716aa 100755 --- a/src/iso/build-iso-arch.sh +++ b/src/iso/build-iso-arch.sh @@ -185,13 +185,18 @@ else fi # Package repos — copy and fix permissions for system paths +info "Copying package repos..." for repo in core extra desktop gaming; do if [ -d "${PROJECT_ROOT}/src/repos/${repo}" ]; then - cp -a "${PROJECT_ROOT}/src/repos/${repo}" "${ROOTFS}/var/lib/dpack/repos/" 2>/dev/null || true + cp -a "${PROJECT_ROOT}/src/repos/${repo}" "${ROOTFS}/var/lib/dpack/repos/" + ok " Copied ${repo} repo ($(find "${PROJECT_ROOT}/src/repos/${repo}" -mindepth 1 -maxdepth 1 -type d | wc -l) packages)" + else + warn " Repo not found: ${PROJECT_ROOT}/src/repos/${repo}" fi done # Fix permissions: repo dirs came from build user, but must be world-readable in the ISO -chmod -R a+rX "${ROOTFS}/var/lib/dpack/repos/" 2>/dev/null || true +chmod -R a+rX "${ROOTFS}/var/lib/dpack/repos/" +ls -la "${ROOTFS}/var/lib/dpack/repos/" || true # --- Install kernel ---------------------------------------------------------- KERNEL_PATH="" diff --git a/tests/run-tests.sh b/tests/run-tests.sh index 9d11814..2544fda 100755 --- a/tests/run-tests.sh +++ b/tests/run-tests.sh @@ -813,10 +813,13 @@ if [ "$QUICK_MODE" = false ] && [ "$ISO_PREREQS_OK" = true ]; then fi # Check that package repos are in the ISO (use sudo — squashfs may preserve restrictive perms) + # Debug: list what's actually in the repos dir + echo " DEBUG repos dir contents:" >&2 + sudo ls -laR "$SQFS_MNT/var/lib/dpack/repos/" 2>&1 | head -20 >&2 || echo " DEBUG: repos dir does not exist or empty" >&2 if sudo test -d "$SQFS_MNT/var/lib/dpack/repos/core"; then record_test "iso.rootfs.repos" "pass" else - record_test "iso.rootfs.repos" "fail" "Package repos missing from ISO" + record_test "iso.rootfs.repos" "fail" "Package repos missing from ISO (see debug output above)" fi sudo umount "$SQFS_MNT" 2>/dev/null