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:
@@ -96,6 +96,12 @@ make_rootfs() {
|
|||||||
if "${copy_pacconf}"; then
|
if "${copy_pacconf}"; then
|
||||||
args+=(-P)
|
args+=(-P)
|
||||||
fi
|
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='*'
|
basestrap "${basestrap_args[@]}" "${args[@]}" "${rootfs}" "${packages[@]}" --overwrite='*'
|
||||||
|
|
||||||
copy_overlay "${root_overlay}" "${rootfs}"
|
copy_overlay "${root_overlay}" "${rootfs}"
|
||||||
|
|||||||
Reference in New Issue
Block a user