blob: 815e33bce04f004a789c12208ceac4dde1e209e8 (
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
41
42
43
44
|
#!/bin/ash
#
# SPDX-License-Identifier: GPL-3.0-or-later
run_hook() {
# shellcheck disable=SC2154
# defined via initcpio's parse_cmdline()
if [ -n "${ip}" ] && [ -n "${parabolaiso_nfs_srv}" ]; then
parabolaiso_nfs_srv=$(eval echo "${parabolaiso_nfs_srv}")
export mount_handler="parabolaiso_nfs_mount_handler"
fi
}
parabolaiso_nfs_mount_handler() {
local mount_status
newroot="${1}"
mkdir -p "/run/parabolaiso/bootmnt"
msg ":: Mounting '${parabolaiso_nfs_srv}'"
# shellcheck disable=SC2154
# defined via initcpio's parse_cmdline()
if [ -n "${parabolaiso_nfs_opt}" ]; then
nfsmount -o "${parabolaiso_nfs_opt}" "${parabolaiso_nfs_srv}" "/run/parabolaiso/bootmnt"
mount_status=$?
else
nfsmount "${parabolaiso_nfs_srv}" "/run/parabolaiso/bootmnt"
mount_status=$?
fi
if [ $mount_status -gt 0 ]; then
echo "ERROR: Mounting '${parabolaiso_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
parabolaiso_mount_handler "${newroot}"
}
# vim: set ft=sh:
|