2 # This file is part of dracut.
3 # SPDX-License-Identifier: GPL-2.0-or-later
5 # Prerequisite check(s) for module.
7 [[ $mount_needs ]] && return 1
9 # If the binary(s) requirements are not fulfilled the module can't be installed
10 require_binaries ip networkctl \
11 "$systemdutildir"/systemd-networkd \
12 "$systemdutildir"/systemd-network-generator \
13 "$systemdutildir"/systemd-networkd-wait-online \
16 # Return 255 to only include the module, if another module requires it.
21 # Module dependency requirements.
24 # This module has external dependency on other module(s).
25 echo dbus kernel-network-modules systemd-sysusers
26 # Return 0 to include the dependent module(s) in the initramfs.
31 # Install the required file(s) and directories for the module in the initramfs.
35 "$dbussystem"/org.freedesktop.network1.conf \
36 "$dbussystemservices"/org.freedesktop.network1.service \
37 "$systemdutildir"/networkd.conf \
38 "$systemdutildir/networkd.conf.d/*.conf" \
39 "$systemdutildir"/systemd-networkd \
40 "$systemdutildir"/systemd-network-generator \
41 "$systemdutildir"/systemd-networkd-wait-online \
42 "$systemdutildir"/network
/80-container-host0.network \
43 "$systemdutildir"/network
/80-container-ve.network \
44 "$systemdutildir"/network
/80-container-vz.network \
45 "$systemdutildir"/network
/80-vm-vt.network \
46 "$systemdutildir"/network
/80-wifi-adhoc.network \
47 "$systemdutildir"/network
/99-default.link \
48 "$systemdsystemunitdir"/systemd-networkd.service \
49 "$systemdsystemunitdir"/systemd-networkd.socket \
50 "$systemdsystemunitdir"/systemd-network-generator.service \
51 "$systemdsystemunitdir"/systemd-networkd-wait-online.service \
52 "$systemdsystemunitdir"/systemd-network-generator.service \
53 "$sysusers"/systemd-network.conf \
56 # Enable systemd type units
58 systemd-networkd.service \
59 systemd-networkd.socket \
60 systemd-network-generator.service \
61 systemd-networkd-wait-online.service
; do
62 $SYSTEMCTL -q --root "$initdir" enable "$i"
65 # Install the hosts local user configurations if enabled.
66 if [[ $hostonly ]]; then
68 "$systemdutilconfdir"/networkd.conf \
69 "$systemdutilconfdir/networkd.conf.d/*.conf" \
70 "$systemdutilconfdir/network/*" \
71 "$systemdsystemconfdir"/systemd-networkd.service \
72 "$systemdsystemconfdir/systemd-networkd.service/*.conf" \
73 "$systemdsystemconfdir"/systemd-networkd.socket \
74 "$systemdsystemconfdir/systemd-networkd.socket/*.conf" \
75 "$systemdsystemconfdir"/systemd-network-generator.service \
76 "$systemdsystemconfdir/systemd-network-generator.service/*.conf" \
77 "$systemdsystemconfdir"/systemd-networkd-wait-online.service \
78 "$systemdsystemconfdir/systemd-networkd-wait-online.service/*.conf" \
79 "$sysusersconfdir"/systemd-network.conf