blob: 406541b3dd5b76876d8ad5639bca6d1e97955bcb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#!/bin/ash
run_hook() {
# shellcheck disable=SC2154 # defined via initcpio's parse_cmdline()
if [ -n "${ip}" ] && [ -n "${archiso_nfs_srv}" ]; then
archiso_nfs_srv=$(eval echo "${archiso_nfs_srv}")
export mount_handler="archiso_nfs_mount_handler"
fi
}
archiso_nfs_mount_handler() {
local mount_status
newroot="${1}"
mkdir -p "/run/archiso/bootmnt"
msg ":: Mounting '${archiso_nfs_srv}'"
# shellcheck disable=SC2154 # defined via initcpio's parse_cmdline()
if [ -n "${archiso_nfs_opt}" ]; then
nfsmount -o "${archiso_nfs_opt}" "${archiso_nfs_srv}" "/run/archiso/bootmnt"
mount_status=$?
else
nfsmount "${archiso_nfs_srv}" "/run/archiso/bootmnt"
mount_status=$?
fi
if [ $mount_status -gt 0 ]; then
echo "ERROR: Mounting '${archiso_nfs_srv}'"
echo " Falling back to interactive prompt"
echo " You can try to fix the problem manually, log out when you are finished"
launch_interactive_shell
fi
if [ "${copytoram}" != "n" ]; then
copytoram="y"
fi
archiso_mount_handler "${newroot}"
}
# vim: set ft=sh:
|