summaryrefslogtreecommitdiff
path: root/archiso/install
diff options
context:
space:
mode:
authorGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2011-11-28 12:28:03 -0300
committerGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2011-11-28 12:28:03 -0300
commit8eb4c624dc41f47f93a04d9e42f531e0642e228b (patch)
tree6e2acec694aec8acca21a86aa5f12df1bc673b1a /archiso/install
parent1edaf15cef3420484d1dfbf08de43fe8d800ab64 (diff)
downloadarchiso32-8eb4c624dc41f47f93a04d9e42f531e0642e228b.tar.xz
[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 <vmlinuz386@yahoo.com.ar>
Diffstat (limited to 'archiso/install')
-rw-r--r--archiso/install/archiso_pxe_curl18
1 files changed, 18 insertions, 0 deletions
diff --git a/archiso/install/archiso_pxe_curl b/archiso/install/archiso_pxe_curl
new file mode 100644
index 0000000..a9342ae
--- /dev/null
+++ b/archiso/install/archiso_pxe_curl
@@ -0,0 +1,18 @@
+# vim: set ft=sh:
+
+build ()
+{
+ MODULES=""
+ BINARIES=""
+ FILES=""
+ SCRIPT="archiso_pxe_curl"
+
+ add_binary "/usr/bin/curl"
+}
+
+help ()
+{
+cat<<HELPEOF
+ This hook loads the necessary modules for boot via PXE and HTTP/FTP with curl.
+HELPEOF
+}