summaryrefslogtreecommitdiff
path: root/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs
diff options
context:
space:
mode:
Diffstat (limited to 'parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs')
-rw-r--r--parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs32
1 files changed, 23 insertions, 9 deletions
diff --git a/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs b/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs
index 6eba5b7..815e33b 100644
--- a/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs
+++ b/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs
@@ -1,30 +1,44 @@
-# vim: set ft=sh:
+#!/bin/ash
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
run_hook() {
- if [[ -n "${ip}" && -n "${parabolaiso_nfs_srv}" ]]; then
+ # 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})
- [[ -n "${parabolaiso_nfs_opt}" ]] && parabolaiso_nfs_opt="-o ${parabolaiso_nfs_opt}"
+ parabolaiso_nfs_srv=$(eval echo "${parabolaiso_nfs_srv}")
- mount_handler="parabolaiso_nfs_mount_handler"
+ 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}'"
- # Do not put "${parabolaiso_nfs_opt}" nfsmount fails!
- if ! nfsmount ${parabolaiso_nfs_opt} "${parabolaiso_nfs_srv}" "/run/parabolaiso/bootmnt"; then
+ # 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
+ if [ "${copytoram}" != "n" ]; then
copytoram="y"
fi
- parabolaiso_mount_handler ${newroot}
+ parabolaiso_mount_handler "${newroot}"
}
+
+# vim: set ft=sh: