diff options
Diffstat (limited to 'parabolaiso/initcpio/hooks/parabolaiso_pxe_http')
-rw-r--r-- | parabolaiso/initcpio/hooks/parabolaiso_pxe_http | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/parabolaiso/initcpio/hooks/parabolaiso_pxe_http b/parabolaiso/initcpio/hooks/parabolaiso_pxe_http index 97de91f..b3440ed 100644 --- a/parabolaiso/initcpio/hooks/parabolaiso_pxe_http +++ b/parabolaiso/initcpio/hooks/parabolaiso_pxe_http @@ -3,6 +3,10 @@ run_hook() { if [[ -n "${ip}" && -n "${parabolaiso_http_srv}" ]]; then + # booting with http is always copy-to-ram, so set here to make sure + # addresses are flushed and interface is set down + copytoram="y" + parabolaiso_http_srv=$(eval echo ${parabolaiso_http_srv}) [[ -z "${parabolaiso_http_spc}" ]] && parabolaiso_http_spc="75%" @@ -34,24 +38,13 @@ parabolaiso_pxe_http_mount_handler () { mkdir -p "/run/parabolaiso/httpspace" mount -t tmpfs -o size="${parabolaiso_http_spc}",mode=0755 httpspace "/run/parabolaiso/httpspace" - local _aitab_url="${parabolaiso_http_srv}${aitab#/run/parabolaiso/bootmnt/}" - local _aitab_file="/run/parabolaiso/httpspace/${aitab#/run/parabolaiso/bootmnt/}" - - _curl_get "${_aitab_url}" "/" - - local aitab_img aitab_mnt aitab_arch aitab_sfs_comp aitab_fs_type aitab_fs_size - while read aitab_img aitab_mnt aitab_arch aitab_sfs_comp aitab_fs_type aitab_fs_size; do - [[ "${aitab_img#\#}" != "${aitab_img}" ]] && continue - [[ "${aitab_arch}" != "any" && "${aitab_arch}" != "${arch}" ]] && continue - if [[ "${aitab_fs_type}" != "none" ]]; then - _curl_get "${parabolaiso_http_srv}${parabolaisobasedir}/${aitab_arch}/${aitab_img}.fs.sfs" "/${aitab_arch}" - else - _curl_get "${parabolaiso_http_srv}${parabolaisobasedir}/${aitab_arch}/${aitab_img}.sfs" "/${aitab_arch}" - fi - done < "${_aitab_file}" + _curl_get "${parabolaiso_http_srv}${parabolaisobasedir}/${arch}/airootfs.sfs" "/${arch}" if [[ "${checksum}" == "y" ]]; then - _curl_get "${parabolaiso_http_srv}${parabolaisobasedir}/checksum.${arch}.md5" "/" + _curl_get "${parabolaiso_http_srv}${parabolaisobasedir}/${arch}/airootfs.sha512" "/${arch}" + fi + if [[ "${verify}" == "y" ]]; then + _curl_get "${parabolaiso_http_srv}${parabolaisobasedir}/${arch}/airootfs.sfs.sig" "/${arch}" fi mkdir -p "/run/parabolaiso/bootmnt" |