]> git.ipfire.org Git - thirdparty/dracut.git/blob - modules.d/40network/module-setup.sh
Tests: find qemu on (open)SUSE systems
[thirdparty/dracut.git] / modules.d / 40network / module-setup.sh
1 #!/bin/bash
2
3 # called by dracut
4 check() {
5 local _program
6
7 require_binaries ip dhclient || return 1
8 require_any_binary arping arping2 || return 1
9
10 return 255
11 }
12
13 # called by dracut
14 depends() {
15 echo "kernel-network-modules"
16 return 0
17 }
18
19 # called by dracut
20 installkernel() {
21 return 0
22 }
23
24 # called by dracut
25 install() {
26 local _arch _i _dir
27 inst_multiple ip dhclient sed awk
28 inst_multiple -o arping arping2
29 inst_multiple -o ping ping6
30 inst_multiple -o brctl
31 inst_multiple -o teamd teamdctl teamnl
32 inst_simple /etc/libnl/classid
33 inst_script "$moddir/ifup.sh" "/sbin/ifup"
34 inst_script "$moddir/netroot.sh" "/sbin/netroot"
35 inst_script "$moddir/dhclient-script.sh" "/sbin/dhclient-script"
36 inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh"
37 inst_simple -H "/etc/dhclient.conf"
38 cat "$moddir/dhclient.conf" >> "${initdir}/etc/dhclient.conf"
39 inst_hook pre-udev 50 "$moddir/ifname-genrules.sh"
40 inst_hook pre-udev 60 "$moddir/net-genrules.sh"
41 inst_hook cmdline 91 "$moddir/dhcp-root.sh"
42 inst_hook cmdline 92 "$moddir/parse-ibft.sh"
43 inst_hook cmdline 95 "$moddir/parse-vlan.sh"
44 inst_hook cmdline 96 "$moddir/parse-bond.sh"
45 inst_hook cmdline 96 "$moddir/parse-team.sh"
46 inst_hook cmdline 97 "$moddir/parse-bridge.sh"
47 inst_hook cmdline 98 "$moddir/parse-ip-opts.sh"
48 inst_hook cmdline 99 "$moddir/parse-ifname.sh"
49 inst_hook cleanup 10 "$moddir/kill-dhclient.sh"
50
51 _arch=$(uname -m)
52
53 inst_libdir_file {"tls/$_arch/",tls/,"$_arch/",}"libnss_dns.so.*" \
54 {"tls/$_arch/",tls/,"$_arch/",}"libnss_mdns4_minimal.so.*"
55
56 dracut_need_initqueue
57 }
58