LEdoian's debuging Arch live medium =================================== Use at own risk. There is probably nothing clever, I just followed [ArchWiki](https://wiki.archlinux.org/title/Archiso)… Building notes -------------- I am not too fond of running `mkarchiso` as root on my machine, so I spin up a VM: ``` qemu-system-x86_64 -enable-kvm -m 4G -machine q35 -cdrom archlinux-2024.01.01-x86_64.iso -drive if=virtio,format=raw,file=vm.img,cache.no-flush=yes,media=disk ``` The `vm.img` is a 20 GB space to clone this repository into, somewhere. To build, we need to install archiso (and probably also git) to the VM. A pitfall is that `mkarchiso` still downloads packages to `/var/cache/pacman/pkg`, which means that the VM's rootfs gets full too early. The solution is either to get enough RAM to fit the whole cache (the current package set is ~2.5 GB), but symlinking `/var/cache/pacman` to a directory in the 20 GB space. Pacman does not seem to complain, and if the used parts of the auxiliary storage fit in RAM, it should be similarly fast (the `cache.no-flush=yes` option does not flush the host's block cache, or something, I might not understand this correctly but I think it goes brrrrr). After about 1.5 h we get the result: 6 GB worth of images – 3 GB for the iso, 3 for netboot files (which seem to mainly duplicate the iso contents, but I understand why they were exported separately). To move the files to the host machine, I just mount the `vm.img`. I could use rsync, but that would mean setting up some authentication between the guest and host (my SSH refuses to use passwords, only keys), so mounting the drive is simpler. (The file does not have any partition table, just the single partition.) In hindsight: I could also tweak the `pacman.conf`, but I came up with the symlink earlier…) Giving the VM more CPUs would speed up the squashfs creation, but I didn't. (I wanted the numbers above to have at least some semantics…) The 20 GB space is _not_ enough for non-interactive run, I had to clean pacman's package cache in order to not run out of space. So 25 GB might be enough (for anybody)… License ------- If you (or a lawyer) thinks a random subset of Arch's packages really counts as copyrightable work, let me put it under CC0-1.0. This README is under CC-BY-4.0, but I can negotiate exceptions. The rest might be a part of the [archiso project](https://gitlab.archlinux.org/archlinux/archiso), `pacman` tells me that it is licenced under GPL-3.0-or-later. Overall, this repository is likewise under GPL-3.0-or-later.