From 765756ae126d57735c22d59a7c1242f01443921e Mon Sep 17 00:00:00 2001 From: David P Date: Wed, 16 May 2018 21:08:49 -0400 Subject: modify entire source according to archiso32 and remove unused configs/talkingparabola-X11 Signed-off-by: David P --- parabolaiso/initcpio/hooks/parabolaiso_pxe_common | 36 ++++++++++++++++++----- 1 file changed, 29 insertions(+), 7 deletions(-) (limited to 'parabolaiso/initcpio/hooks/parabolaiso_pxe_common') diff --git a/parabolaiso/initcpio/hooks/parabolaiso_pxe_common b/parabolaiso/initcpio/hooks/parabolaiso_pxe_common index d8ac709..7c3b1b5 100644 --- a/parabolaiso/initcpio/hooks/parabolaiso_pxe_common +++ b/parabolaiso/initcpio/hooks/parabolaiso_pxe_common @@ -1,7 +1,8 @@ # vim: set ft=sh: run_hook () { - local i net_mac bootif_mac bootif_dev + # Do *not* declare 'bootif_dev' local! We need it in run_latehook(). + local i net_mac bootif_mac # These variables will be parsed from /tmp/net-*.conf generated by ipconfig local DEVICE local IPV4ADDR IPV4BROADCAST IPV4NETMASK IPV4GATEWAY IPV4DNS0 IPV4DNS1 @@ -21,11 +22,20 @@ run_hook () { break fi done - ip="${ip}::${bootif_dev}" + if [[ "${ip}" == "dhcp" ]]; then + ip=":::::${bootif_dev}:dhcp" + else + ip="${ip}::${bootif_dev}" + fi fi # setup network and save some values - ipconfig "ip=${ip}" + if ! ipconfig -t 20 "ip=${ip}"; then + echo "ERROR; Failed to configure network" + 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 . /tmp/net-*.conf @@ -33,18 +43,30 @@ run_hook () { # setup DNS resolver if [[ "${IPV4DNS0}" != "0.0.0.0" ]]; then - echo "nameserver ${IPV4DNS0}" > /etc/resolv.conf + echo "# added by parabolaiso_pxe_common hook" > /etc/resolv.conf + echo "nameserver ${IPV4DNS0}" >> /etc/resolv.conf fi if [[ "${IPV4DNS1}" != "0.0.0.0" ]]; then echo "nameserver ${IPV4DNS1}" >> /etc/resolv.conf fi + if [[ -n "${DNSDOMAIN}" ]]; then + echo "search ${DNSDOMAIN}" >> /etc/resolv.conf + echo "domain ${DNSDOMAIN}" >> /etc/resolv.conf + fi fi } run_latehook () { - [[ -z "${copy_resolvconf}" ]] && copy_resolvconf="y" + if [[ -n "${ip}" ]]; then + [[ -z "${copy_resolvconf}" ]] && copy_resolvconf="y" - if [[ "${copy_resolvconf}" != "n" && -f /etc/resolv.conf ]]; then - cp /etc/resolv.conf /new_root/etc/resolv.conf + if [[ "${copytoram}" == "y" ]]; then + if [[ -n "${bootif_dev}" ]]; then + ip addr flush dev "${bootif_dev}" + ip link set "${bootif_dev}" down + fi + elif [[ "${copy_resolvconf}" != "n" && -f /etc/resolv.conf ]]; then + cp /etc/resolv.conf /new_root/etc/resolv.conf + fi fi } -- cgit v1.2.2