Tools to customize an Ubuntu Live CD.  Many parts of this will end up
being version-specific.  The host machine must be running systemd,
since the image is executed inside a systemd-nspawn container.

Set up host machine, which must be running a recent systemd:

  sudo apt install squashfs-tools xorriso isolinux systemd-container iptables
  sudo systemctl start systemd-networkd

Choose a config:

  export BUILD_CONFIG=16.04

Download and extract the original ISO:

  ./extractiso.sh

Apply customizations, both to the outer ISO and the inner image.
This will also run customizer-inner.sh inside a container:

  ./customize.sh

(Optional) Run and enter a shell in the container, for manual customization:

  ./enter.sh

Build the new ISO:

  ./buildiso.sh

Boot the ISO in QEMU with a blank HDD, to test and install:

  ./run.sh -c

Boot QEMU with the same HDD image as above, to test an "installed" system:

  ./run.sh -d

Remove everything but the ISOs:

  ./cleanup.sh

Notes:

- A more proper way to build a distro from scratch would be something
  like one of these, except that they're out of date:

    http://www.mythbuntu.org/development/developer-cheatsheet (2010)
    https://github.com/squibbylinux/squibby-build (2012)