From 22d6863ef1b2eb2a22264f2bfdb2b9329ab5dfdb Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Wed, 12 May 2021 15:10:30 +0200 Subject: [PATCH] fix(network-manager): cope with distributions not using `libexec` --- modules.d/35network-manager/module-setup.sh | 4 ++-- modules.d/35network-manager/nm-lib.sh | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/modules.d/35network-manager/module-setup.sh b/modules.d/35network-manager/module-setup.sh index 92da876ab..0b7d21aea 100755 --- a/modules.d/35network-manager/module-setup.sh +++ b/modules.d/35network-manager/module-setup.sh @@ -30,7 +30,7 @@ install() { inst_multiple ip sed grep inst NetworkManager - inst /usr/libexec/nm-initrd-generator + inst_multiple -o /usr/{lib,libexec}/nm-initrd-generator inst_multiple -o teamd dhclient inst_hook cmdline 99 "$moddir/nm-config.sh" if dracut_module_included "systemd"; then @@ -59,7 +59,7 @@ install() { inst_simple "$moddir/nm-lib.sh" "/lib/nm-lib.sh" if [[ -x "$initdir/usr/sbin/dhclient" ]]; then - inst /usr/libexec/nm-dhcp-helper + inst_multiple -o /usr/{lib,libexec}/nm-dhcp-helper elif ! [[ -e "$initdir/etc/machine-id" ]]; then # The internal DHCP client silently fails if we # have no machine-id diff --git a/modules.d/35network-manager/nm-lib.sh b/modules.d/35network-manager/nm-lib.sh index 47693ec5c..2d27e0795 100644 --- a/modules.d/35network-manager/nm-lib.sh +++ b/modules.d/35network-manager/nm-lib.sh @@ -4,8 +4,15 @@ type getcmdline > /dev/null 2>&1 || . /lib/dracut-lib.sh nm_generate_connections() { rm -f /run/NetworkManager/system-connections/* - # shellcheck disable=SC2046 - /usr/libexec/nm-initrd-generator -- $(getcmdline) + if [ -x /usr/libexec/nm-initrd-generator ]; then + # shellcheck disable=SC2046 + /usr/libexec/nm-initrd-generator -- $(getcmdline) + elif [ -x /usr/lib/nm-initrd-generator ]; then + # shellcheck disable=SC2046 + /usr/lib/nm-initrd-generator -- $(getcmdline) + else + derror "nm-initrd-generator not found" + fi if getargbool 0 rd.neednet; then for i in /usr/lib/NetworkManager/system-connections/* \ -- 2.47.3