]> git.ipfire.org Git - thirdparty/dracut-ng.git/commitdiff
fix(network): handle '-m network'
authorJo Zzsi <jozzsicsataban@gmail.com>
Mon, 2 Sep 2024 17:33:59 +0000 (13:33 -0400)
committerLaszlo Gombos <laszlo.gombos@gmail.com>
Tue, 10 Sep 2024 16:30:18 +0000 (12:30 -0400)
call module_check instead of check_module

modules.d/40network/module-setup.sh

index a72ca540f9d56b8965794e8b6e7a4e07cc83bfe2..c8ba54402b1acc969531f373e703e17c5944214e 100755 (executable)
@@ -7,26 +7,26 @@ check() {
 
 # called by dracut
 depends() {
+    echo -n "net-lib kernel-network-modules "
+
     is_qemu_virtualized && echo -n "qemu-net "
 
-    for module in connman network-manager network-legacy systemd-networkd; do
+    for module in network-manager systemd-networkd connman network-legacy; do
         if dracut_module_included "$module"; then
-            network_handler="$module"
-            break
+            echo "$module"
+            return 0
         fi
     done
 
-    if [ -z "$network_handler" ]; then
-        if check_module "network-manager"; then
-            network_handler="network-manager"
-        elif check_module "systemd-networkd"; then
-            network_handler="systemd-networkd"
-        elif check_module "connman"; then
-            network_handler="connman"
-        else
-            network_handler="network-legacy"
+    for module in network-manager systemd-networkd connman; do
+        # install the first viable module, unless there omitted
+        module_check $module > /dev/null 2>&1
+        if [[ $? == 255 ]] && ! [[ " $omit_dracutmodules " == *\ $module\ * ]]; then
+            echo "$module"
+            return 0
         fi
-    fi
-    echo "net-lib kernel-network-modules $network_handler"
+    done
+
+    echo "network-legacy"
     return 0
 }