installer: Allow download of ISO images over HTTPS
[ipfire-2.x.git] / src / installer / dracut-module / module-setup.sh
1 #!/bin/bash
2 # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
3 # ex: ts=8 sw=4 sts=4 et filetype=sh
4
5 # called by dracut
6 check() {
7     return 255
8 }
9
10 # called by dracut
11 depends() {
12     echo base bash mdraid shutdown
13     return 0
14 }
15
16 # called by dracut
17 install() {
18     inst /etc/system-release
19     inst /usr/bin/installer
20     inst /usr/bin/downloadsource.sh
21     inst /usr/bin/execute-postinstall.sh
22     inst /usr/local/bin/iowrap
23
24     # Kernel drivers
25     instmods =drivers/hid
26
27     # Network drivers
28     instmods =drivers/net/ethernet =drivers/net/usb
29     instmods virtio_net hv_netvsc vmxnet3
30
31     # Filesystem support
32     inst_multiple parted mkswap mke2fs mkreiserfs mkfs.xfs
33     instmods ext4 iso9660 reiserfs vfat xfs
34
35     # Extraction
36     inst_multiple tar gzip lzma xz
37
38     # Networking
39     inst_multiple dhcpcd ethtool hostname ip ping sort wget
40     inst /usr/bin/start-networking.sh
41     inst /var/ipfire/dhcpc/dhcpcd.conf
42     inst /var/ipfire/dhcpc/dhcpcd-run-hooks
43     inst "$moddir/70-dhcpcd.exe" "/var/ipfire/dhcpc/dhcpcd-hooks/70-dhcpcd.exe"
44
45     # CAs
46     inst /etc/ssl/cert.pem
47
48     inst /etc/host.conf /etc/protocols
49     inst /etc/nsswitch.conf /etc/resolv.conf
50     inst_libdir_file "libnss_dns.so.*"
51
52     # Misc. tools
53     inst_multiple chmod cut grep eject id killall md5sum touch
54     inst_multiple -o fdisk cfdisk df ps top
55
56     # Hardware IDs
57     inst /usr/share/hwdata/pci.ids /usr/share/hwdata/usb.ids
58
59     # Locales
60     mkdir -p "${initdir}/usr/lib/locale"
61     localedef --quiet --prefix="${initdir}" --add-to-archive /usr/lib/locale/en_US
62     localedef --quiet --prefix="${initdir}" --add-to-archive /usr/lib/locale/en_US.utf8
63
64     for file in /usr/share/locale/*/LC_MESSAGES/installer.mo; do
65         inst "${file}"
66     done
67
68     # Bash start files
69     inst_multiple /etc/profile /root/.bash_profile /etc/bashrc /root/.bashrc
70     for file in /etc/profile.d/*.sh; do
71         inst "${file}"
72     done
73
74     inst_hook cmdline 99 "$moddir/fake-root.sh"
75     inst_hook pre-mount 99 "$moddir/run-installer.sh"
76
77     return 0
78 }