fix: install init-logind provider before base in buildiso make_rootfs

Same fix as basestrap/main.py: when base depends on init-logind
virtual, pacman --noconfirm picks the first provider alphabetically
(elogind-dinit < elogind-openrc), pulling in dinit -> dinit-rc which
conflicts with openrc (both provide/conflict with init-rc).

Install elogind- as a separate basestrap call BEFORE the
full package list to satisfy init-logind before base needs it.
This commit is contained in:
2026-07-05 21:30:33 +02:00
parent 81f215166d
commit b0ec890760
+6
View File
@@ -96,6 +96,12 @@ make_rootfs() {
if "${copy_pacconf}"; then
args+=(-P)
fi
# Install init-logind provider BEFORE base to avoid pacman picking
# the wrong one alphabetically (elogind-dinit < elogind-openrc),
# which pulls in dinit -> dinit-rc and conflicts with openrc.
basestrap "${basestrap_args[@]}" "${args[@]}" "${rootfs}" "elogind-${INITSYS}" --overwrite='*'
basestrap "${basestrap_args[@]}" "${args[@]}" "${rootfs}" "${packages[@]}" --overwrite='*'
copy_overlay "${root_overlay}" "${rootfs}"