Quickstart¶
Super Fast Quickstart¶
Building images with live-wrapper is quite simple. For the impatient:
sudo apt install live-wrapper
sudo lwr
This will build you a file named output.iso
in the current directory
containing a minimal live-image.
Warning
Currently live-wrapper will create a lot of files and directories in the
current working directory. There is a TODO item to move these to a temporary
location and clean up afterwards, though this has not yet been fully
implemented. You may want to use an empty directory to run lwr
in.
Customising the Image¶
There are a number of supported command-line arguments that can be passed to live-wrapper. These change the behaviour to create a customised image.
Changing the Distribution¶
By default, the ISO image will be built using the stretch
distribution. If
you’d like to build using buster
or sid
you can pass the -d
parameter to live-wrapper like so:
sudo lwr -d buster
Note
You must use the codename, and not the suite (e.g. stable), when specifying the distribution.
Using an Alternative Mirror¶
By default, vmdebootstrap
will use the mirror configured in your
/etc/apt/sources.list
. If you have a faster mirror available, you may want
to change the mirror you’re using to create the image. You can do this with the
-m
parameter:
sudo lwr -m http://localhost/debian/
You may also configure the mirror that will be configured inside the
image. This will be used for any extra packages that are specified,
and will also be the mirror that the image will use after the build is
complete. Change this with the --apt-mirror
parameter:
sudo lwr -m http://localhost/debian/ --apt-mirror http://deb.debian.org/debian
By default this is set to http://deb.debian.org/debian
Customising Packages¶
There are several methods for specifying extra packages to be installed into the live image:
-t
/--tasks
should be used to give a list of task packages to be included in the image. These will be installed as part of thevmdebootstrap
hook, so all their “Depends” and “Recommends” will be installed too.-e
/--extra
allows for a list of extra non-task packages to be installed, again with all their “Depends” and “Recommends” included.-f
/--firmware
allows for a list of firmware packages to be installed in the image, again with all their “Depends” and “Recommends” included. Also each of these packages will be downloaded and saved into the image so that an included installer will automatically find them for installation. BEWARE that using this option is likely to mean your image will include non-free software. Check the licensing carefully before distributing it.
For example:
sudo lwr -e vim -t science-typesetting
sudo lwr -e "emacs25 jed" -t live-task-xfce -f "firmware-iwlwifi firmware-realtek"
Finally, if you want to make a live image that will work as a
standalone source for installation you will need to specify a list of
“base” packages. This is the list of packages that will need to be
installed after the contents of the live image is copied to the new
system. This is essentially a list of bootloader packages and a few
utility packages that they use. Specify this list with the
--base_debs
parameter. For example, this is the list needed for
Debian Stretch on amd64:
sudo lwr --base_debs "eject pciutils usbutils \
keyboard-configuration console-setup \
grub-efi-amd64 grub-efi-amd64-bin grub-pc"
The customise script also has a part to play in this area, to ensure that all the needed dependencies for these packages are also added to the image.
Setting the Volume ID¶
The Volume ID is the embedded label in the ISO image; this is what
will be displayed on the desktop when a DVD or USB flash drive
containing the image is inserted into a computer. The default is
DEBIAN LIVE
, or you can change this using the --volume_id
parameter. There is a 32-character limit for what can be specified
here. Example:
sudo lwr --volume_id "My live image"
Testing the Image with QEMU¶
You can easily test your created live images with QEMU.
Warning
You will need to increase the amount of memory available to QEMU when running the live image. The image will crash if run with the default memory limit.
To test the image using BIOS boot:
qemu-system-x86_64 -m 2G -cdrom live.iso
For EFI boot you will need to install the ovmf
package and then run:
qemu-system-x86_64 -bios /usr/share/ovmf/OVMF.fd -m 2G -cdrom live.iso
To test with an emulated USB device, run:
qemu-system-x86_64 -m 2G -usbdevice disk:live.iso
To test the speech synthesis installer option, you will need to add the following to the QEMU invocation:
-soundhw sb16,es1370,adlib
Note
Using -hda to attach the disk image will prevent the installer from detecting the “CD-ROM” as this is not a removable device, it is an emulated attached hard disk drive.
Next Steps¶
To learn more about using live-wrapper, you can read the man page or check out the Advanced Topics section of this documentation.