LIVE-BUILD(1)

πŸ“¦
version 3.0~a57 Β· 3 versions
, in ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– LIVE-BUILD(1) β€” Debian Live Project πŸ’–

okay bestie, welcome to LIVE-BUILD(1), straight from the Debian Live Project. this is part one of four, so grab a snack, we're going in πŸ“


✨ NAME ✨

lb config β€” Create config directory


🌸 SYNOPSIS 🌸

lb config [live-build options]

lb config
     [--apt apt|aptitude]
     [--apt-ftp-proxy URL]
     [--apt-http-proxy URL]
     [--apt-indices true|false|none]
     [--apt-options OPTION|"OPTIONS"]
     [--aptitude-options OPTION|"OPTIONS"]
     [--apt-pipeline DEPTH]
     [--apt-recommends true|false]
     [--apt-secure true|false]
     [--apt-source-archives true|false]
     [-a|--architectures ARCHITECTURE]
     [-b|--binary-images iso|iso-hybrid|netboot|tar|hdd|virtual-hdd]
     [--binary-filesystem fat16|fat32|ext2|ext3|ext4]
     [--bootappend-install PARAMETER|"PARAMETERS"]
     [--bootappend-live PARAMETER|"PARAMETERS"]
     [--bootloader grub|syslinux|yaboot]
     [--bootstrap cdebootstrap|cdebootstrap-static|debootstrap|copy]
     [-f|--bootstrap-flavour minimal|standard]
     [--bootstrap-keyring PACKAGE]
     [--cache true|false]
     [--cache-indices true|false]
     [--cache-packages true|false]
     [--cache-stages STAGE|"STAGES"]
     [--checksums md5|sha1|sha256|none]
     [--compression bzip2|gzip|lzip|none]
     [--config GIT_URL::GIT_ID]
     [--build-with-chroot true|false]
     [--chroot-filesystem ext2|ext3|ext4|squashfs|jffs2|none]
     [--clean]
     [-c|--conffile FILE]
     [--debconf-frontend dialog|editor|noninteractive|readline]
     [--debconf-nowarnings true|false]
     [--debconf-priority low|medium|high|critical]
     [--debian-installer
true|cdrom|netinst|netboot|businesscard|live|false]
     [--debian-installer-distribution daily|CODENAME]
     [--debian-installer-preseedfile FILE|URL]
     [--debian-installer-gui true|false]
     [--debug]
     [-d|--distribution CODENAME]
     [--parent-distribution CODENAME]
     [--parent-debian-installer-distribution CODENAME]
     [--dump]
     [--fdisk fdisk|fdisk.dist]
     [--firmware-binary true|false]
     [--firmware-chroot true|false]
     [--force]
     [--grub-splash FILE]
     [--gzip-options OPTION|"OPTIONS"]
     [--hooks FILE]
     [--ignore-system-defaults]
     [--initramfs auto|none|live-boot|casper]
     [--initramfs-compression bzip2|gzip|lzma]
     [--initsystem sysvinit|runit|systemd|upstart|none]
     [--interactive shell]
     [--isohybrid-options OPTION|"OPTIONS"]
     [--iso-application NAME]
     [--iso-preparer NAME]
     [--iso-publisher NAME]
     [--iso-volume NAME]
     [--jffs2-eraseblock SIZE]
     [--keyring-packages PACKAGE|"PACKAGES"]
     [-k|--linux-flavours FLAVOUR|"FLAVOURS"]
     [--linux-packages "PACKAGES"]
     [--losetup losetup|losetup.orig]
     [--memtest memtest86+|memtest86|none]
     [-m|--parent-mirror-bootstrap URL]
     [--parent-mirror-chroot URL]
     [--parent-mirror-chroot-security URL]
     [--parent-mirror-chroot-volatile URL]
     [--parent-mirror-chroot-backports URL]
     [--parent-mirror-binary URL]
     [--parent-mirror-binary-security URL]
     [--parent-mirror-binary-volatile URL]
     [--parent-mirror-binary-backports URL]
     [--parent-mirror-debian-installer URL]
     [--mirror-bootstrap URL]
     [--mirror-chroot URL]
     [--mirror-chroot-security URL]
     [--mirror-chroot-volatile URL]
     [--mirror-chroot-backports URL]
     [--mirror-binary URL]
     [--mirror-binary-security URL]
     [--mirror-binary-volatile URL]
     [--mirror-binary-backports URL]
     [--mirror-debian-installer URL]
     [--mode debian|emdebian|progress|ubuntu|kubuntu]
     [--system live|normal]
     [--net-root-filesystem nfs|cfs]
     [--net-root-mountoptions OPTIONS]
     [--net-root-path PATH]
     [--net-root-server IP|HOSTNAME]
     [--net-cow-filesystem nfs|cfs]
     [--net-cow-mountoptions OPTIONS]
     [--net-cow-path PATH]
     [--net-cow-server IP|HOSTNAME]
     [--net-tarball true|false]
     [-p|--package-lists LIST|"LISTS"]
     [--quiet]
     [--root-command sudo]
     [--use-fakeroot true|false]
     [--archives ARCHIVE|"ARCHIVES"]
     [--archive-areas ARCHIVE_AREA|"ARCHIVE_AREAS"]
     [--parent-archive-areas PARENT_ARCHIVE_AREA|"PARENT_ARCHIVE_AREAS"]
     [--security true|false]
     [--source true|false]
     [-s|--source-images iso|netboot|tar|hdd]
     [--syslinux-theme THEME_SUFFIX]
     [--tasksel apt|aptitude|tasksel]
     [--templates PATH]
     [--hdd-size MB]
     [--volatile true|false]
     [--backports true|false]
     [--exposed-root true|false]
     [--verbose]
     [--win32-loader true|false]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so lb config is the high-level command (the porcelain, fancy word, love that for it) of live-build(7), which is the Debian Live tool suite πŸ’…

what it does: lb config populates the configuration directory for live-build. by default that directory is named 'config' and it gets created in the current directory β€” like, right where you ran lb config from. main character behavior, honestly.

note, and this one is important bestie: currently lb config tries to be smart and sets defaults for some options depending on the setting of other options (e.g. which linux packages to be used depending on if a squeeze system gets build or not). which means: when you're generating a new configuration, you should call lb config only once with all options specified. calling it several times with only a subset of the options each can result in non working configurations 😭 this is also caused by the fact that lb config called with one option only changes that option, and leaves everything else as is unless its not defined. however, lb config does warn about know impossible or likely impossible combinations that would lead to non working live systems. if you're unsure, remove config/{binary,bootstrap,chroot,common,source} and call lb config again. periodt. ✨

πŸ‘‘ OPTIONS πŸ‘‘

in addition to its specific options lb config understands all generic live-build options. see live-build(7) for a complete list of all generic live-build options. (yes, all of them. iconic.)

  • --apt apt|aptitude β€” defines if apt-get or aptitude is used to install packages when building the image. the default is apt. πŸ’–
  • --apt-ftp-proxy URL β€” sets the ftp proxy to be used by apt. by default, this is empty. note that this variable is only for the proxy that gets used by apt internally within the chroot, it is not used for anything else. lowkey important, don't forget it.
  • --apt-http-proxy URL β€” sets the http proxy to be used by apt. by default, this is empty. note that this variable is only for the proxy that gets used by apt internally within the chroot, it is not used for anything else. same vibe as the ftp one fr fr.
  • --apt-indices true|false|none β€” defines if the resulting images should have apt indices or not and defaults to true. if set to none, no indices are included at all. 🫢
  • --apt-options OPTION|"OPTIONS" β€” defines the default options that will be appended to every apt call that is made inside chroot during the building of the image. by default, this is set to --yes to allow non-interactive installation of packages. (no more y/n prompts, we love an auto-yes πŸ‘‘)
  • --aptitude-options OPTION|"OPTIONS" β€” defines the default options that will be appended to every aptitude call that is made inside chroot during building of the image. by default, this is set to --assume-yes to allow non-interactive installation of packages. twin behavior with the apt one, obviously.
  • --apt-pipeline DEPTH β€” sets the depth of the apt/aptitude pipeline. in cases where the remote server is not RFC conforming or buggy (such as Squid 2.0.2) this option can be a value from 0 to 5 indicating how many outstanding requests APT should send. a value of zero MUST be specified if the remote host does not properly linger on TCP connections β€” otherwise data corruption will occur πŸ’€ hosts which require this are in violation of RFC 2068. by default, live-build does not set this option.
  • --apt-recommends true|false β€” defines if apt should install recommended packages automatically. by default, this is true except in emdebian mode.
  • --apt-secure true|false β€” defines if apt should check repository signatures. this is true by default. security queen πŸ”₯
  • --apt-source-archives true|false β€” defines if deb-src entries should be included in the resulting live image or not, defaults to on.
  • -a|--architectures ARCHITECTURE β€” defines the architecture of the to be build image. by default, this is set to the host architecture. note that you cannot crossbuild for another architecture if your host system is not able to execute binaries for the target architecture natively. for example, building amd64 images on i386 and vice versa is possile if you have a 64bit capable i386 processor and the right kernel. but building powerpc images on an i386 system is not possible. sorry bestie, that's just the rules 😭
  • -b|--binary-images iso|iso-hybrid|netboot|tar|hdd β€” defines the image type to build. by default, for images using syslinux this is set to iso-hybrid to build CD/DVD images that may also be used like hdd images, for non-syslinux images, it defaults to iso. ✨
  • --binary-filesystem fat16|fat32|ext2|ext3|ext4 β€” defines the filesystem to be used in the image type. this only has an effect if the selected binary image type does allow to choose a filesystem. for example, when selection iso the resulting CD/DVD has always the filesystem ISO9660. when building hdd images for usb sticks, this is active. note that it defaults to fat16 on all architectures except sparc where it defaults to ext4. also note that if you choose fat16 and your resulting binary image gets bigger than 2GB, the binary filesystem automatically gets switched to fat32. (it just knows, okay? 🧚)
  • --bootappend-install PARAMETER|"PARAMETERS" β€” sets boot parameters specific to debian-installer, if included.
  • --bootappend-live PARAMETER|"PARAMETERS" β€” sets boot parameters specific to debian-live. a complete list of boot parameters can be found in the live-boot(7) and live-config(7) manual pages. go read those too, iykyk πŸ“š
  • --bootloader grub|syslinux|yaboot β€” defines which bootloader is beeing used in the generated image. this has only an effect if the selected binary image type does allow to choose the bootloader. for example, if you build a iso, always syslinux (or more precise, isolinux) is being used. also note that some combinations of binary images types and bootloaders may be possible but live-build does not support them yet. lb config will fail to create such a not yet supported configuration and give a explanation about it. for hdd images on amd64 and i386, the default is syslinux. yaboot is only used on powerpc. πŸ’…

part 1 done bestie!! the rest is coming, don't go anywhere β€” we've got SO many more options to get through 🌈
  • --bootstrap cdebootstrap|cdebootstrap-static|debootstrap|copy β€” okay so this one picks which program bootstraps the debian chroot, and the default is debootstrap. but bestie, listen β€” if you set the bootstrap program to copy, then your host system gets copied. That can be useful if you want to convert/clone your existing host system into a live system, but make sure you actually have enough free space, because depending on your host system this can get quite big. πŸ’…
  • -f|--bootstrap-flavour minimal|standard β€” defines if the bootstrap program should bootstrap the standard system (all packages of priority required and important, which is the default) or a minimal system (only packages of priority required, plus apt). ✨
  • --bootstrap-keyring PACKAGE β€” sets the archive keyring package to be used. Default is debian-archive-keyring. πŸ”‘
  • --cache true|false β€” defines globally if any cache should be used at all. Different caches can be controlled through their own options. 🧺
  • --cache-indices true|false β€” defines if downloaded package indices and lists should be cached, which is false by default. Enabling it would allow you to rebuild an image completely offline, however, you would not get updates anymore then. 🫢
  • --cache-packages true|false β€” defines if downloaded packages files should be cached, which is true by default. Disabling it does save space consumption in your build directory, but remember that you will cause much unnecessary traffic if you do a couple of rebuilds. In general you should always leave it true, however, in some particular rare build setups, it can be faster to refetch packages from the local network mirror rather than to utilize the local disk. πŸ“¦
  • --cache-stages true|false|STAGE|"STAGES" β€” sets which stages should be cached. By default set to bootstrap. As an exception to the normal stage names, also rootfs can be used here, which does only cache the generated root filesystem in filesystem.{dir,ext*,squashfs}. This is useful during development if you want to rebuild the binary stage but not regenerate the root filesystem all the time. πŸŽ€
  • --checksums md5|sha1|sha256|none β€” defines if the binary image should contain a file called md5sums.txt, sha1sums.txt and/or sha256sums.txt. These list all files on the image together with their checksums. This in turn can be used by live-boots built-in integrity-check to verify the medium if specified at boot prompt. In general, this should not be false and is an important feature of live system released to the public. However, during development of very big images it can save some time by not calculating the checksums. πŸ”₯
  • --compression bzip2|gzip|lzip|none β€” defines the compression program to be used to compress tarballs. Defaults to gzip. πŸ—œοΈ
  • --config GIT_URL::GIT_ID β€” allows to bootstrap a config tree from a git repositories, optionally appended by a Git Id (branch, commit, tag, etc.). 🌱
  • --build-with-chroot true|false β€” defines whether live-build should use the tools from within the chroot to build the binary image or not by using and including the host systems tools. <strong>This is a very dangerous option</strong>, using the tools of the host system can lead to tainted and even non-bootable images if the host systems version of the required tools (mainly these are the bootloaders such as syslinux, grub and yaboot, and the auxilliary tools such as dosfstools, genisoimage, squashfs-tools and others) do not exactly match what is present at build-time in the target distribution. Never do disable this option unless you are exactly sure what you are doing and have completely understood its consequences. πŸ’€
  • --chroot-filesystem ext2|ext3|ext4|squashfs|jffs2|none β€” defines which filesystem type should be used for the root filesystem image. If you use none, then no filesystem image is created and the root filesystem content is copied on the binary image filesystem as flat files. Depending on what binary filesystem you have chosen, it may not be possible to build with such a plain root filesystem, e.g. fat16/fat32 will not work as linux does not support to run directly on them. πŸ¦‹
  • --clean β€” minimizes config directory by automatically removing unused and thus empty subdirectories. 🧹
  • -c|--conffile FILE β€” using a user specified alternative configuration file in addition to the normally used one in the config directory. πŸ“„
  • --debconf-frontend dialog|editor|noninteractive|readline β€” defines what value the debconf frontend should be set to inside the chroot. Note that setting it to anything but noninteractive, which is the default, makes your build asking questions during the build. iykyk 😭
  • --debconf-nowarnings true|false β€” defines if warnings of debconf should be displayed or not. Warnings from debconf are generally very rare and by default, we skip them, if any, in order to keep the build process entirely non interactive. πŸ™ˆ
  • --debconf-priority low|medium|high|critical β€” defines what value the debconf priority should be set to inside the chroot. By default, it is set to critical, which means that almost no questions are displayed. Note that this only has an effect if you use any debconf frontend different from noninteractive. πŸ‘‘
  • --debian-installer true|cdrom|netinst|netboot|businesscard|live|false β€” defines which type, if any, of the debian-installer should be included in the resulting binary image. By default, no installer is included. All available flavours except live are the identical configurations used on the installer media produced by regular debian-cd. When live is chosen, the live-installer udeb is included so that debian-installer will behave different than usual β€” instead of installing the debian system from packages from the medium or the network, it installs the live system to the disk. πŸ’Ώ
  • --debian-installer-distribution daily|CODENAME β€” defines the distribution where the debian-installer files should be taken out from. Normally, this should be set to the same distribution as the live system. However, some times, one wants to use a newer or even daily built installer. 🌈
  • --debian-installer-preseedfile FILE|URL β€” sets the filename or URL for an optionally used and included preseeding file for debian-installer. If config/binary_debian-installer/preseed.cfg exists, it will be used by default. πŸ“
  • --debian-installer-gui true|false β€” defines if the debian-installer graphical GTK interface should be true or not. In Debian mode and for most versions of Ubuntu, this option is true, whereas otherwise false, by default. πŸ–₯️
  • --debug β€” turn on debugging informational messages. πŸ›
  • -d|--distribution CODENAME β€” defines the distribution of the resulting live system. 🌸
  • -d|--parent-distribution CODENAME β€” defines the parent distribution for derivatives of the resulting live system. 🧚
  • -d|--parent-debian-installer-distribution CODENAME β€” defines the parent debian-installer distribution for derivatives of the resulting live system. πŸ’œ
  • --dump β€” prepares a report of the currently present live system configuration and the version of live-build used. This is useful to provide if you submit bug reports, we do get all informations required for us to locate and replicate an error. πŸ“
  • --fdisk fdisk|fdisk.dist β€” sets the filename of the fdisk binary from the host system that should be used. This is autodetected and does generally not need any customization. πŸ’Ύ
  • --force β€” forces re-execution of already run stages. Use only if you know what you are doing. It is generally safer to use lb clean to clean up before re-executing lb build. ⚠️
  • --grub-splash FILE β€” defines the name of an optional to be included splash screen graphic for the grub bootloader. 🎨
  • --gzip-options OPTION|"OPTIONS" β€” defines the default options that will be appended to (almost) every gzip call during the building of the image. By default, this is set to --best to use highest (but slowest) compression. Dynamically, if the host system supports it, also --rsyncable is added. πŸ—œοΈ
  • --hooks FILE β€” defines which hooks available in /usr/share/live/build/examples/hooks should be activated. Normally, there are no hooks executed. Make sure you know and understood the hook before you enable it. πŸͺ
  • --ignore-system-defaults β€” lb config by default reads system defaults from /etc/live/build.conf and /etc/live/build.d when generating a new live system config directory. This is useful if you want to set global settings, such as mirror locations, and don't want to specify them all of the time. 🌍
  • --initramfs auto|none|live-boot|casper β€” sets the name of package that contains the live system specific initramfs modification. By default, auto is used, which means that at build time of the image rather than on configuration time, the value will be expanded to casper when building ubuntu systems, to live-boot for all other systems. Using none is useful if the resulting system image should not be a live image (experimental). 🧠
  • --initramfs-compression bzip2|gzip|lzma] β€” defines the compression program to be used to compress the initramfs. Defaults to gzip. πŸ—œοΈ
  • --interactive shell β€” defines if after the chroot stage and before the beginning of the binary stage, a interactive shell login should be spawned in the chroot in order to allow you to do manual customizations. Once you close the shell with logout or exit, the build will continue as usual. Note that it's strongly discouraged to use this for anything else than testing. Modifications that should be present in all builds of a live system should be properly made through hooks. Everything else destroys the beauty of being able to completely automatise the build process and making it non interactive. By default, this is of course false. πŸ’…
  • --isohybrid-options OPTION|"OPTIONS" β€” defines options to pass to isohybrid. 🧬
  • --iso-application NAME β€” sets the APPLICATION field in the header of a resulting CD/DVD image and defaults to "Debian Live" in debian mode, and to "Emdebian Live" in emdebian mode, and "Ubuntu Live" in ubuntu mode. πŸ’Ώ
  • --iso-preparer NAME β€” sets the PREPARER field in the header of a resulting CD/DVD image. By default this is set to "live-build VERSION; http://packages.qa.debian.org/live-build", whereas VERSION is expanded to the version of live-build that was used to build the image. ✨
  • --iso-publisher NAME β€” sets the PUBLISHED field in the header of a resulting CD/DVD image πŸŽ€. Default is literally 'Debian Live project; http:/live.debian.net/; debian-live@lists.debian.org'. And bestie, listen: change this to your own actual values at latest when you're distributing custom and unofficial images, okay? Don't leave your girl's name on your fan project. πŸ™ˆ
  • --iso-volume NAME β€” sets the VOLUME field in the header of a resulting CD/DVD, and defaults to '(MODE) (DISTRIBUTION) (DATE)' where MODE expands to the name of the mode in use, DISTRIBUTION to the distribution name, and DATE to the current date and time of the generation ✨. So it kinda names itself. Main character energy.
  • --jffs2-eraseblock SIZE β€” sets the eraseblock size for a JFFS2 (Second Journalling Flash File System) filesystem 🌸. Default is 64 KiB. Heads up though: if your erase block size differs from the target MTD device's erase block size, JFFS2 may not perform optimally πŸ’€. And if SIZE is below 4096, the units are assumed to be KiB.
  • --keyring-packages PACKAGE|"PACKAGES" β€” sets the keyring package or additional keyring packages πŸ’œ. Default is debian-archive-keyring.
  • -k, --linux-flavours FLAVOUR|"FLAVOURS" β€” sets the kernel flavours to be installed 🧚. Note that if you specify more than one, the first one will be configured as the default kernel that gets booted. First one's the favourite, fr fr.
  • --linux-packages "PACKAGES" β€” sets the internal name of the kernel packages naming scheme πŸ‘‘. If you're using debian kernel packages you won't have to adjust it at all. But if you decide to use custom kernel packages that don't follow the debian naming scheme, remember to set this option to the stub of the packages only (for debian this is linux-image-2.6), so that STUB-FLAVOUR results in a valid package name (for debian, e.g. linux-image-2.6-486). Preferably you use the meta package name, if any, for the stub, so your configuration is ABI independent ✨. Also don't forget you have to include stubs of the binary modules packages for unionfs or aufs, and squashfs if you built them out-of-tree. It's giving "many small details, no skipping."
  • --losetup losetup|losetup.orig β€” sets the filename of the losetup binary from the host system that should be used πŸ”§. This is autodetected and generally does not need any customization, so you can lowkey just leave it alone.
  • --memtest memtest86+|memtest86|none β€” defines if memtest, memtest86+, or no memory tester at all should be included as secondary bootloader configuration πŸ’…. Only available on amd64 and i386, and defaults to memtest86+.
  • -m, --parent-mirror-bootstrap URL β€” sets the location of the debian package mirror that should be used to bootstrap from πŸ¦‹. Defaults to http://ftp.de.debian.org/debian/, which honestly may not be a good default if you live outside of Europe. Sorry not sorry to the default.
  • --parent-mirror-chroot URL β€” sets the location of the debian package mirror used to fetch the packages to build the live system πŸ“. By default, this is set to the value of --parent-mirror-bootstrap.
  • --parent-mirror-chroot-security URL β€” sets the location of the debian security package mirror used to fetch packages to build the live system πŸ”₯. By default, this points to http://security.debian.org/debian/.
  • --parent-mirror-chroot-volatile URL β€” sets the location of the debian volatile package mirror used to fetch packages to build the live system 🌈. By default, this is set to the value of --parent-mirror-chroot.
  • --parent-mirror-chroot-backports URL β€” sets the location of the debian backports package mirror used to fetch packages to build the live system ⭐. By default, this points to http://backports.debian.org/debian-backports/.
  • --parent-mirror-binary URL β€” sets the location of the debian package mirror that should end up configured in the final image, and which is the one a user would actually see and use πŸ‘€. This has not necessarily to be the same as the one used to build the image, e.g. if you use a local mirror but want to have an official mirror in the image. By default, 'http://cdn.debian.net/debian/' is used.
  • --parent-mirror-binary-security URL β€” sets the location of the debian security package mirror that should end up configured in the final image πŸ’–. By default, 'http://cdn.debian.net/debian-security/' is used.
  • --parent-mirror-binary-volatile URL β€” sets the location of the debian volatile package mirror that should end up configured in the final image 🌸. By default, the value of --parent-mirror-binary is used.
  • --parent-mirror-binary-backports URL β€” sets the location of the debian backports package mirror that should end up configured in the final image πŸ’œ. By default, 'http://backports.debian.org/debian-backports/' is used.
  • --parent-mirror-debian-installer URL β€” sets the location of the mirror used to fetch the debian installer images πŸŽ€. By default, this points to the same mirror used to build the live system, i.e. the value of --parent-mirror-bootstrap.
  • --mirror-bootstrap URL β€” sets the location of the debian package mirror that should be used to bootstrap the derivative from 🧚. Defaults to http://ftp.de.debian.org/debian/, which may not be a good default if you live outside of Europe.
  • --mirror-chroot URL β€” sets the location of the debian package mirror used to fetch the packages of the derivative to build the live system πŸ‘‘. By default, this is set to the value of --mirror-bootstrap.
  • --mirror-chroot-security URL β€” sets the location of the debian security package mirror used to fetch the packages of the derivative to build the live system πŸ”₯. By default, this points to http://security.debian.org/debian/.
  • --mirror-chroot-volatile URL β€” sets the location of the debian volatile package mirror used to fetch packages of the derivative to build the live system 🌈. By default, this is set to the value of --mirror-chroot.
  • --mirror-chroot-backports URL β€” sets the location of the debian backports package mirror used to fetch packages of the derivative to build the live system ⭐. By default, this points to http://backports.debian.org/debian-backports/.
  • --mirror-binary URL β€” sets the location of the derivative package mirror that should end up configured in the final image, and which is the one a user would see and use πŸ‘€. This has not necessarily to be the same as the one used to build the image, e.g. if you use a local mirror but want to have an official mirror in the image.
  • --mirror-binary-security URL β€” sets the location of the derivative's security package mirror that should end up configured in the final image πŸ’–.
  • --mirror-binary-volatile URL β€” sets the location of the derivative's volatile package mirror that should end up configured in the final image 🌸.
  • --mirror-binary-backports URL β€” sets the location of the derivative's backports package mirror that should end up configured in the final image πŸ’œ.
  • --mirror-debian-installer URL β€” sets the location of the mirror used to fetch the debian installer images of the derivative πŸŽ€. By default, this points to the same mirror used to build the live system, i.e. the value of --mirror-bootstrap.
  • --mode debian|emdebian|progress|ubuntu β€” defines a global mode to load project-specific defaults ✨. By default this is set to debian.
  • --system live|normal β€” defines if the resulting system image should be a live system or a normal, non-live system πŸ€”.
  • --net-root-filesystem nfs|cfs β€” defines the filesystem that will be configured in the bootloader configuration for your netboot image 🧚. Defaults to nfs.
  • --net-root-mountoptions OPTIONS β€” sets additional options for mounting the root filesystem in netboot images, and is by default empty 🫢.
  • --net-root-path PATH β€” sets the file path that will be configured in the bootloader configuration for your netboot image πŸ“. Defaults to /srv/debian-live in debian mode, /srv/emebian-live when in emdebian mode, and /srv/ubuntu-live when in ubuntu mode.
  • --net-root-server IP|HOSTNAME β€” sets the IP or hostname that will be configured in the bootloader configuration for the root filesystem of your netboot image 🌐. Defaults to 192.168.1.1.
  • --net-cow-filesystem nfs|cfs β€” defines the filesystem type for the copy-on-write layer, and defaults to nfs πŸ’….
  • --net-cow-mountoptions OPTIONS β€” sets additional options for mounting the copy-on-write layer in netboot images, and is by default empty 🫢.
  • --net-cow-path PATH β€” defines the path to the client writable filesystem πŸ”₯. Anywhere that client_mac_address is specified in the path, live-boot will substitute the MAC address of the client delimited with hyphens. Like:
/export/hosts/client_mac_address
/export/hosts/00-16-D3-33-92-E8

Iconic substitution behaviour, ngl.

  • --net-cow-server IP|HOSTNAME β€” sets the IP or hostname that will be configured in the bootloader configuration for the copy-on-write filesystem of your netboot image 🌐, and is by default empty.
  • --net-tarball true|false β€” defines if a compressed tarball should be created 🎁. Disabling this option leads to no tarball at all β€” the plain binary directory is considered the output in this case. Default is true.
  • -p, --package-lists LIST|"LISTS" β€” defines which lists available in /usr/share/live/build/package-lists should be used πŸ“‹. By default, this is set to standard. Note that if you have local package lists, you don't need to list them here β€” putting them into config/package-lists is enough (the filename needs to have the .list suffix though). Sneaky but valid.
  • --quiet β€” reduces the verbosity of messages output by lb build 🀫.
  • --archives ARCHIVE|"ARCHIVES" β€” enables one of the available third-party archive configurations in /usr/share/live/build/archives πŸ—‚οΈ.
  • --root-command sudo β€” controls if live-build should use sudo internally to build the live image πŸ”. Note that this is not well tested, and that you should, when relying on sudo, call the individual live-build command with sudo itself. Okay so basically don't just trust it blindly, bestie.
  • --use-fakeroot true|false β€” controls if live-build should utilize fakeroot and fakechroot to try and avoid requiring root privileges where possible 🧚. By default, this option is false.
  • --archive-areas ARCHIVE_AREA|"ARCHIVE_AREAS" β€” okay so this defines which package archive areas of a debian packages archive should be used for configured debian package mirrors. By default, it's set to main. But bestie, remember to check the licenses of each packages with respect to their redistributability in your juristiction when enabling contrib or non-free with this mechanism. Legal vibe check, fr fr.
  • --parent-archive-areas PARENT_ARCHIVE_AREA|"PARENT_ARCHIVE_AREAS" β€” defines the archive areas for derivatives of the resulting live system. Derivative tea.
  • --security true|false β€” defines if the security repositories specified in the security mirror options should be used or not. Security girlies, this one's for you.
  • --source true|false β€” defines if a corresponding source image to the binary image should be build. By default this is false because most people do not require this and would require to download quite a few source packages. However, once you start distributing your live image, you should make sure you build it with a source image alongside. That's the responsible main character move.
  • -s|--source-images iso|netboot|tar|hdd β€” defines the image type for the source image. Default is tar. Tar-ific.
  • --firmware-binary true|false β€” defines if firmware packages should be automatically included into the binary pool for debian-installer. Note that only firmware packages available within the configured archive areas are included, e.g. an image with packages from main only will not automatically include firmware from non-free. This option does not interfere with explicitly listed packages in binary package lists. No cap.
  • --firmware-chroot true|false β€” defines if firmware packages should be automatically included into the live image. Note that only firmware packages available within the configured archive areas are included, e.g. an image with packages from main only will not automatically include firmware from non-free. This option does not interfere with explicitly listed packages in chroot package lists. Same energy as above, but for chroot package lists.
  • --swap-file-path PATH β€” defines the path to a swap file to create in the binary image. Default is not to create a swap file. No swap file unless you say so.
  • --swap-file-size MB β€” defines what size in megabytes the swap file should be, if one is to be created. Default is 512MB. Half a gig, cute.
  • --syslinux-theme THEME_SUFFIX β€” defines the syslinux theme to use. The theme suffix is the name of a directory in /usr/share/syslinux/themes/ provided by a package named syslinux-theme- plus the suffix. In debian mode, this defaults to debian-squeeze. Aesthetic matters, periodt.
  • --tasksel apt|aptitude|tasksel β€” selects which program is used to install tasks. By default, this is set to tasksel. Task girlie.
  • --templates PATH β€” sets the path to the templates that live-build is going to use, e.g. for bootloaders. By default, this is set to /usr/share/live/build/templates/. We love a good template.
  • --hdd-size MB β€” defines what size the hdd image should be. Note that although the default is set to 10000 (= 10GB), it will not need 10GB space on your harddisk as the files are created as sparse files. Sparse files ate and left no crumbs.
  • --volatile true|false β€” defines if debian volatile package archives should be included in the image or not. Volatile? In this economy?
  • --backports true|false β€” defines if debian backports package archives should be included in the image or not. Backports, back again.
  • --exposed-root true|false β€” defines whether to expose the root filesystem as read only and not covered by the union filesystem. This has useful implications for certain speciality setups such as LTSP. By default, this option is false. Root exposed? Not in a scandalous way, it's read-only.
  • --verbose β€” increases the verbosity of messages output by lb build. Talkative king.
  • --win32-loader true|false β€” defines if win32-loader should be included in the binary image or not. Windows? In my live-build? It's more likely than you think.

✨ ENVIRONMENT ✨

Currently, command line switches can also be specified through the corresponding environment variable. However, this generally should not be relied upon, as it is an implementation detail that is subject to change in future releases. For options applying directly to live-build, environment variables are named LB_FOO, meaning, e.g. --apt-ftp-proxy becomes LB_APT_FTP_PROXY (the exception being internal options such as --debug). For options passed to another program, as in APT_OPTIONS or GZIP_OPTIONS, no LB_ prefix is used. So like, it works, but don't make it your whole personality.

πŸŽ€ FILES πŸŽ€

  • auto/config β€” yep, this path exists, that's the tea.
  • /etc/live/build.conf, /etc/live/build.d β€” An optional, global configuration file for lb config variables. It is useful to specify a few system wide defaults, like LB_PARENT_MIRROR_BOOTSTRAP. This feature can be false by specifying the --ignore-system-defaults option. Global defaults, but you can opt out.

πŸ‘€ SEE ALSO πŸ‘€

🌐 HOMEPAGE 🌐

More information about live-build and the Debian Live project can be found on the homepage at <http://live.debian.net/> and in the manual at <http://live.debian.net/manual/>. Click responsibly.

πŸ’€ BUGS πŸ’€

Bugs can be reported by submitting a bugreport for the live-build package in the Debian Bug Tracking System at <http://bugs.debian.org/> or by writing a mail to the Debian Live mailing list at <debian-live@lists.debian.org>. Not me manifesting bugs, but if they happen, report them.

πŸ‘‘ AUTHOR πŸ‘‘

live-build was written by Daniel Baumann <daniel@debian.org> for the Debian project. Iconic.


πŸ’– That's the whole manual, bestie. This page is from live-build version 3.0~a57-1, dated 2012-08-10, and it's the LIVE-BUILD(1) page. Periodt. πŸ’