Fix archiso hook path: search rather than assume repo layout

The hooks are NOT at initcpio/hooks/archiso in the archiso git repo root
(that path doesn't exist). Remove the broken install lines from Dockerfile
and instead add a find diagnostic during build to reveal the actual paths.

entrypoint: use find to locate the hooks dynamically under /usr/share/archiso
(the releng airootfs copy) instead of hardcoding a path — bail with a clear
error listing if nothing is found.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
nmemmertandClaude Sonnet 4.6 committed 2026-07-27 08:36:15 -04:00
1 parent 00c4914b7b
commit 629f16537e
2 files changed
+28 -12

No files matched your search

+4 -4
View File
@@ -61,12 +61,12 @@ RUN pacman -Syu --noconfirm && \
# install them into the ISO airootfs (the chroot has no archiso package, so
# the hooks must come from the airootfs overlay for mkinitcpio to use them).
RUN git clone --depth=1 https://gitlab.archlinux.org/archlinux/archiso.git /tmp/archiso && \
install -Dm755 /tmp/archiso/archiso/mkarchiso /usr/bin/mkarchiso && \
install -Dm755 /tmp/archiso/scripts/run_archiso.sh /usr/bin/run_archiso && \
install -Dm755 /tmp/archiso/archiso/mkarchiso /usr/bin/mkarchiso && \
install -Dm755 /tmp/archiso/scripts/run_archiso.sh /usr/bin/run_archiso && \
install -d /usr/share/archiso && \
cp -a /tmp/archiso/configs /usr/share/archiso/ && \
install -Dm644 /tmp/archiso/initcpio/hooks/archiso /usr/share/archiso/initcpio/hooks/archiso && \
install -Dm644 /tmp/archiso/initcpio/install/archiso /usr/share/archiso/initcpio/install/archiso && \
echo "=== archiso hook locations ===" && \
find /tmp/archiso -name "archiso" -not -path "*/\.git/*" | sort && \
rm -rf /tmp/archiso
# Pre-download linux-aarch64 and create a local pacman repo so mkarchiso