diff options
author | Esteban Carnevale <alfplayer@mailoo.org> | 2013-09-03 16:20:57 -0300 |
---|---|---|
committer | Esteban Carnevale <alfplayer@mailoo.org> | 2013-09-03 16:20:57 -0300 |
commit | fd3ccb1d3ea53e5da96473558b6c2457ae8affa5 (patch) | |
tree | 8e55162ca8cab8a859d269275528c7411a90ef5d /parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs |
Update profile releng
Diffstat (limited to 'parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs')
-rw-r--r-- | parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs b/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs new file mode 100644 index 0000000..6eba5b7 --- /dev/null +++ b/parabolaiso/initcpio/hooks/parabolaiso_pxe_nfs @@ -0,0 +1,30 @@ +# vim: set ft=sh: + +run_hook() { + 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}" + + mount_handler="parabolaiso_nfs_mount_handler" + fi +} + +parabolaiso_nfs_mount_handler() { + 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 + 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} +} |