From 8eb4c624dc41f47f93a04d9e42f531e0642e228b Mon Sep 17 00:00:00 2001 From: Gerardo Exequiel Pozzi Date: Mon, 28 Nov 2011 12:28:03 -0300 Subject: [PATCH] [archiso] Add archiso_pxe_curl hook Its add support for downloading the ISO image via HTTP/FTP with curl or download *.sfs files. The files are downloaded on /run/archiso/curlspace (tmpfs) and setup a loop dev from it (like in archiso_loop_mnt) in the ISO case, or just do a bind mount to /run/archiso/bootmnt in the other case. This hook must be located after archiso_pxe_nbd in mkinitcpio.conf, in that way NBD is the default. New bootparm: * archiso_curl_url=(first form) archiso_curl_url=http://192.168.0.7/archlinux/iso/archlinux.iso (absolute form) Use an absolute URL. Fetch the entire ISO archiso_curl_url=ftp://${pxeserver}/archlinux/iso/archlinux.iso (relative form) Use the as IP the same server where PXE reside. Fetch the entire ISO * archiso_curl_url=(second form) archiso_curl_url=http://192.168.0.7/archlinux/iso/unpacked (absolute form) Use an absolute URL. Where unpacked (an example name) is a directory where ${archisobasedir} ("arch" by default) is located with all *.sfs. This fetch only needed files. archiso_curl_url=ftp://${pxeserver}/archlinux/iso/unpacked (relative form) Use the as IP the same server where PXE reside. Where unpacked (an example name) is a directory where ${archisobasedir} ("arch" by default) is located with all *.sfs. This fetch only needed files. * curlspace_size= Set a size for a tmpfs filesystem where files are downloaded. Signed-off-by: Gerardo Exequiel Pozzi --- README | 15 +++++++ archiso/Makefile | 4 ++ archiso/hooks/archiso_pxe_curl | 75 ++++++++++++++++++++++++++++++++ archiso/install/archiso_pxe_curl | 18 ++++++++ configs/releng/build.sh | 4 +- configs/releng/mkinitcpio.conf | 2 +- configs/releng/packages.i686 | 1 - configs/releng/packages.x86_64 | 1 - 8 files changed, 115 insertions(+), 5 deletions(-) create mode 100644 archiso/hooks/archiso_pxe_curl create mode 100644 archiso/install/archiso_pxe_curl diff --git a/README b/README index 0dd2179..dede082 100644 --- a/README +++ b/README @@ -74,6 +74,7 @@ INDEX BOOTIF= Default: (set via PXELINUX) + ** hooks/archiso_pxe_nbd * archiso_nbd_name= Set NBD export name used by the server. @@ -82,6 +83,18 @@ INDEX Default: "${pxeserver}" (The