diff --git a/.gitea/workflows/build-iso.yaml b/.gitea/workflows/build-iso.yaml index 0d43d8a..e678f85 100644 --- a/.gitea/workflows/build-iso.yaml +++ b/.gitea/workflows/build-iso.yaml @@ -1,4 +1,4 @@ -name: Scheduled ArchISO Build +name: Automated Arch ISO Build on: schedule: @@ -23,7 +23,7 @@ jobs: - name: Install archiso and dependencies run: | - pacman -Syu --noconfirm archiso jq + pacman -Syu --noconfirm --needed archiso jq - name: Build Arch ISO run: | diff --git a/.gitea/workflows/tests.yaml b/.gitea/workflows/tests.yaml index 874c66d..216f048 100644 --- a/.gitea/workflows/tests.yaml +++ b/.gitea/workflows/tests.yaml @@ -54,7 +54,7 @@ jobs: printf '\n[cachyos]\nInclude = /etc/pacman.d/cachyos-mirrorlist\n' \ >> /etc/pacman.conf - pacman -Syu --noconfirm + pacman -Syu --noconfirm --needed - name: Set up chaotic-aur repo run: | @@ -65,7 +65,7 @@ jobs: printf '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist\n' \ >> /etc/pacman.conf - pacman -Syu --noconfirm + pacman -Syu --noconfirm --needed - name: Lint shell scripts with ShellCheck run: | @@ -260,3 +260,30 @@ jobs: echo "" echo "✅ All packages verified successfully!" fi + + - name: Check for conflicting packages + run: | + echo "═══════════════════════════════════════════════════════════════" + echo " Checking for conflicting packages in packages.x86_64" + echo "═══════════════════════════════════════════════════════════════" + + # Collect all package names from the list + PKGS=() + while IFS= read -r pkg; do + [[ -z "$pkg" || "$pkg" =~ ^# ]] && continue + PKGS+=("$pkg") + done < packages.x86_64 + + # Use pacman -Sp --print to resolve the full install set and check for conflicts + # This catches "X and Y are in conflict" errors before the ISO build + PKG_LIST=$(printf '%s\n' "${PKGS[@]}") + if CONFLICTS=$(echo "$PKG_LIST" | pacman -Sp --needed - 2>&1); then + echo "✅ No package conflicts detected" + else + echo "$CONFLICTS" | grep -i "conflict" || true + echo "" + echo "═══════════════════════════════════════════════════════════════" + echo " ❌ Conflicting packages found — fix packages.x86_64" + echo "═══════════════════════════════════════════════════════════════" + exit 1 + fi diff --git a/packages.x86_64 b/packages.x86_64 index 4db7e4d..510897a 100644 --- a/packages.x86_64 +++ b/packages.x86_64 @@ -397,7 +397,6 @@ yay ydotool yt-dlp zen-browser-bin -yq zram-generator zsh zsh-completions