README_ISO.md 2.1 KB

Making of the Installbox ISO

This is how the ISO for the installbox can be created.

apt-get install -y bsdtar genisoimage syslinux-utils
cd ~
rm -rf iso
mkdir iso
wget http://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/10.0.0+nonfree/amd64/iso-cd/firmware-10.0.0-amd64-netinst.iso
bsdtar -C iso -xf firmware-10.0.0-amd64-netinst.iso

Edit iso/isolinux/txt.cfg. If you have forked the repository, please make sure to adopt the path to the preseed file accordingly.

-         append vga=788 initrd=/install.amd/initrd.gz --- quiet
+        append vga=788 initrd=/install.amd/initrd.gz url=https://notabug.org/MarcusMoeller/installbox/raw/master/preseed.cfg locale=en_US.UTF-8 keyboard-configuration/xkb-keymap=ch ipv6.disable=1 debconf_debug=5 netcfg/get_domain=domain.example netcfg/dhcp_timeout=60 biosdevname=0 net.ifnames=0 netcfg/get_hostname=installbox --- quiet

Edit iso/isolinux/gtk.cfg. Same here. Adopt if you have forked the repository.

-         append vga=788 initrd=/install.amd/gtk/initrd.gz --- quiet
+        append vga=788 initrd=/install.amd/gtk/initrd.gz url=https://notabug.org/MarcusMoeller/installbox/raw/master/preseed.cfg locale=en_US.UTF-8 keyboard-configuration/xkb-keymap=ch ipv6.disable=1 debconf_debug=5 netcfg/get_domain=domain.example netcfg/dhcp_timeout=60 biosdevname=0 net.ifnames=0 netcfg/get_hostname=installbox --- quiet
cd iso; md5sum `find ! -name "md5sum.txt" ! -path "./isolinux/*" -follow -type f` > md5sum.txt; cd ..
genisoimage -o debian-installbox-amd64.iso -r -J -no-emul-boot -boot-load-size 4 -boot-info-table -b isolinux/isolinux.bin -c isolinux/boot.cat ./iso
isohybrid debian-installbox-amd64.iso

If you are working on a fork, change the url to the puppet.tar.gz archive at the end of the preseed.cfg file. The puppet tarball also contains a script within modules/puppet/files called applypuppet. This script has the same content as applypuppet.txt in the git root. If you want to modify the url to point to your forked puppet.tar.gz, unpack the archive to a temporary directory, edit the mentioned file, compress it again and commit it to your repository.