From 71a94ac74e545b0460eccf3a2e3ab989153743fb Mon Sep 17 00:00:00 2001 From: nevaforget Date: Mon, 20 Apr 2026 12:38:40 +0200 Subject: [PATCH] fix(ci): install only makedepends, skip full depends via -d MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit moonarch-git's runtime depends include AUR-only packages (stasis, auto-cpufreq, ttf-ubuntusans-nerd) that plain pacman cannot resolve, so `makepkg -s` fails with "Could not resolve all dependencies" — even though those runtime deps aren't needed to build the package. Extract makedepends from PKGBUILD, install them targeted (cargo/go for Rust and Go packages; empty for moonarch-git), then run makepkg with -d so it skips the full dep check. Rust packages still get their compiler, moonarch-git builds without needing the AUR world. --- .gitea/workflows/build-and-publish.yaml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/build-and-publish.yaml b/.gitea/workflows/build-and-publish.yaml index 1eefbb6..b83929c 100644 --- a/.gitea/workflows/build-and-publish.yaml +++ b/.gitea/workflows/build-and-publish.yaml @@ -41,7 +41,16 @@ jobs: echo "==> Building $pkg" cd "$pkg" - makepkg -sf --noconfirm + # Install makedepends manually (cargo, go, …) and skip the full + # depends check via -d. Rationale: moonarch-git's runtime depends + # include AUR-only packages (stasis, auto-cpufreq, ttf-ubuntusans-nerd) + # which pacman can't resolve. Those deps aren't needed at build time. + MAKEDEPS=$(awk '/^makedepends=\(/,/^\)/' PKGBUILD | grep -oE "'[^']+'" | tr -d "'" | tr '\n' ' ') + if [ -n "$MAKEDEPS" ]; then + # shellcheck disable=SC2086 + sudo pacman -S --needed --noconfirm $MAKEDEPS + fi + makepkg -sfd --noconfirm # makepkg can emit multiple artifacts per build (main + -debug # split package). Upload each. Arch filename convention: