diff --git a/build/Dockerfile b/build/Dockerfile index 5ef7bfd..258fec4 100644 --- a/build/Dockerfile +++ b/build/Dockerfile @@ -142,8 +142,13 @@ RUN useradd -m -G wheel -s /bin/bash builder && \ chmod 700 /home/builder/.gnupg && \ chown -R builder:builder /home/builder +# Arch Linux ARM's makepkg.conf still defaults PKGEXT to .pkg.tar.xz; every +# tool downstream of the build (sign.sh, push-build, sync-rebuilds, the +# notifier) expects .pkg.tar.zst, so an aarch64 package would build and then +# be skipped at signing. Pin the extension so both architectures match. RUN sed -i 's/^#MAKEFLAGS=.*/MAKEFLAGS="-j$(nproc)"/' /etc/makepkg.conf && \ - sed -i 's/^COMPRESSZST=.*/COMPRESSZST=(zstd -c -z -q --threads=0 -)/' /etc/makepkg.conf + sed -i 's/^COMPRESSZST=.*/COMPRESSZST=(zstd -c -z -q --threads=0 -)/' /etc/makepkg.conf && \ + sed -i "s|^PKGEXT=.*|PKGEXT='.pkg.tar.zst'|" /etc/makepkg.conf # Pacman wrapper that auto-resolves package conflicts (e.g. rustup vs rust). # makepkg only passes --noconfirm to pacman, which defaults to 'N' on conflict