8eb4c624dc
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>
57 lines
2.7 KiB
Makefile
57 lines
2.7 KiB
Makefile
all:
|
|
|
|
install: install-program install-hooks install-examples install-doc
|
|
|
|
install-program:
|
|
# install to sbin since script only usable by root
|
|
install -D -m 755 mkarchiso $(DESTDIR)/usr/sbin/mkarchiso
|
|
# testiso can be used by anyone
|
|
install -D -m 755 testiso $(DESTDIR)/usr/bin/testiso
|
|
|
|
install-hooks:
|
|
# hooks/install are needed by mkinitcpio
|
|
install -D -m 644 hooks/archiso $(DESTDIR)/lib/initcpio/hooks/archiso
|
|
install -D -m 644 install/archiso $(DESTDIR)/lib/initcpio/install/archiso
|
|
install -D -m 755 archiso_shutdown $(DESTDIR)/lib/initcpio/archiso_shutdown
|
|
install -D -m 644 hooks/archiso_shutdown $(DESTDIR)/lib/initcpio/hooks/archiso_shutdown
|
|
install -D -m 644 install/archiso_shutdown $(DESTDIR)/lib/initcpio/install/archiso_shutdown
|
|
install -D -m 644 archiso_pxe_nbd $(DESTDIR)/lib/initcpio/archiso_pxe_nbd
|
|
install -D -m 644 hooks/archiso_pxe_common $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_common
|
|
install -D -m 644 install/archiso_pxe_common $(DESTDIR)/lib/initcpio/install/archiso_pxe_common
|
|
install -D -m 644 hooks/archiso_pxe_nbd $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_nbd
|
|
install -D -m 644 install/archiso_pxe_nbd $(DESTDIR)/lib/initcpio/install/archiso_pxe_nbd
|
|
install -D -m 644 hooks/archiso_pxe_curl $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_curl
|
|
install -D -m 644 install/archiso_pxe_curl $(DESTDIR)/lib/initcpio/install/archiso_pxe_curl
|
|
install -D -m 644 hooks/archiso_loop_mnt $(DESTDIR)/lib/initcpio/hooks/archiso_loop_mnt
|
|
install -D -m 644 install/archiso_loop_mnt $(DESTDIR)/lib/initcpio/install/archiso_loop_mnt
|
|
|
|
install-examples:
|
|
# install examples
|
|
install -d -m 755 $(DESTDIR)/usr/share/archiso/
|
|
cp -r ../configs $(DESTDIR)/usr/share/archiso/
|
|
|
|
install-doc:
|
|
install -d -m 755 $(DESTDIR)/usr/share/archiso/
|
|
install -D -m 644 ../README $(DESTDIR)/usr/share/doc/archiso/README
|
|
|
|
uninstall:
|
|
rm -f $(DESTDIR)/usr/sbin/mkarchiso
|
|
rm -f $(DESTDIR)/usr/bin/testiso
|
|
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso
|
|
rm -f $(DESTDIR)/lib/initcpio/install/archiso
|
|
rm -f $(DESTDIR)/lib/initcpio/archiso_shutdown
|
|
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_shutdown
|
|
rm -f $(DESTDIR)/lib/initcpio/install/archiso_shutdown
|
|
rm -f $(DESTDIR)/lib/initcpio/archiso_pxe_nbd
|
|
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_common
|
|
rm -f $(DESTDIR)/lib/initcpio/install/archiso_pxe_common
|
|
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_nbd
|
|
rm -f $(DESTDIR)/lib/initcpio/install/archiso_pxe_nbd
|
|
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_curl
|
|
rm -f $(DESTDIR)/lib/initcpio/install/archiso_pxe_curl
|
|
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_loop_mnt
|
|
rm -f $(DESTDIR)/lib/initcpio/install/archiso_loop_mnt
|
|
rm -rf $(DESTDIR)/usr/share/archiso/
|
|
|
|
.PHONY: install install-program install-hooks install-examples install-doc uninstall
|