1 .TH LIVE\-BUILD 7 2014\-09\-12 4.0.2-1 "Live Systems Project"
4 \fBlive\-build\fR \- the live systems tool suite
8 \fBlb \fR\fICOMMAND\fR [\fB\-h|\-\-help\fR] [\fB\-u|\-\-usage\fR] [\fB\-v|\-\-version\fR] [\fB\-\-breakpoints\fR] [\fB\-\-conffile\fR] [\fB\-\-debug\fR] [\fB\-\-force\fR] [\fB\-\-quiet\fR] [\fB\-\-verbose\fR]
13 live\-build is a set of scripts to build live system images. The idea behind live\-build is a tool suite that uses a configuration directory to completely automate and customize all aspects of building a Live image.
15 The \fICOMMAND\fR is a name of a live\-build command (see below).
17 More documentation about how to use live\-build is available in the individual manpages for each helper and in the manual at <\fIhttp://live-systems.org/manual/\fR>.
22 .SS Shared live\-build options
23 The following command line options are supported by all live\-build programs.
24 .IP "\fB-h, \-\-help\fR" 4
25 display help and exit.
26 .IP "\fB-u, \-\-usage\fR" 4
28 .IP "\fB-v, \-\-version\fR" 4
29 output version information and exit.
30 .SS Common live\-build options
31 The following command line options are supported by most live\-build programs. See the man page of each program for a complete explanation of what each option does.
32 .IP "\fB\-\-breakpoints\fR" 4
34 .IP "\fB\-\-conffile\fR" 4
35 use custom configuration file.
36 .IP "\fB\-\-debug\fR" 4
37 show debug information.
38 .IP "\fB\-\-force\fR" 4
39 force helper execution, even if stage file exists.
40 .IP "\fB\-\-quiet\fR" 4
42 .IP "\fB\-\-verbose\fR" 4
46 .SH LIVE\-BUILD COMMANDS
48 We divide live\-build into high level ("porcelain") commands and low level ("plumbing") commands.
50 Here is the complete list of all available live\-build commands. See their man
51 pages for additional documentation.
54 .SH HIGH\-LEVEL COMMANDS (PORCELAIN)
56 We separate the porcelain commands into the main commands and some ancillary user utilities.
57 .SS Main porcelain commands
58 .IP "\fBlb_config\fR(1)" 4
59 create configuration for live\-build
60 .IP "\fBlb_bootstrap\fR(1)" 4
61 create the first stage by bootstrapping a basic debian system
62 .IP "\fBlb_chroot\fR(1)" 4
63 create the second stage by customizing the chroot
64 .IP "\fBlb_binary\fR(1)" 4
65 create the third stage by generating a binary image
66 .IP "\fBlb_source\fR(1)" 4
67 create the optional fourth stage by generating a source image
68 .IP "\fBlb_clean\fR(1)" 4
69 clean up system build directories
70 .SS Ancillary Commands
72 generic live\-build wrapper
73 .IP "\fBlb_build\fR(1)" 4
75 .IP "\fBlb_local\fR(1)" 4
76 helper for using a local live\-build
77 .IP "\fBlb_testroot\fR(1)" 4
78 ensure that a system is built as root
81 .SH LOW\-LEVEL COMMANDS (PLUMBING)
83 The actual work of live\-build is implemented in the low-level commands, called plumbing. They are not supposed to be used by end users, they should stick with porcelains as they ensure that all the different plumbing commands are executed in the right order. However, if you intend to reuse live\-build commands in your own scripts, then the plumbings might be of interest for you.
85 Note that the interface (set of options and the semantics) to these low\-level commands are meant to be a lot more stable than Porcelain level commands. The interface to Porcelain commands on the other hand are subject to change in order to improve the end user experience.
86 .SS Bootstrap commands
87 .IP "\fBlb_bootstrap_cache\fR(1)" 4
89 .IP "\fBlb_bootstrap_cdebootstrap\fR(1)" 4
90 bootstrap a Debian system with cdebootstrap(1)
91 .IP "\fBlb_bootstrap_debootstrap\fR(1)" 4
92 bootstrap a Debian system with debootstrap(8)
94 .IP "\fBlb_chroot_apt\fR(1)" 4
95 manage /etc/apt/apt.conf
96 .IP "\fBlb_chroot_cache\fR(1)" 4
98 .IP "\fBlb_chroot_debianchroot\fR(1)" 4
99 manage /etc/debian_chroot
100 .IP "\fBlb_chroot_devpts\fR(1)" 4
102 .IP "\fBlb_chroot_dpkg\fR(1)" 4
104 .IP "\fBlb_chroot_hacks\fR(1)" 4
105 execute hacks in chroot
106 .IP "\fBlb_chroot_hostname\fR(1)" 4
108 .IP "\fBlb_chroot_hosts\fR(1)" 4
110 .IP "\fBlb_chroot_install\-packages\fR(1)" 4
111 install queued packages into chroot
112 .IP "\fBlb_chroot_interactive\fR(1)" 4
113 make build interactive
114 .IP "\fBlb_chroot_linux\-image\fR(1)" 4
115 manage /etc/kernel\-img.conf
116 .IP "\fBlb_chroot_hooks\fR(1)" 4
117 execute local hooks in chroot
118 .IP "\fBlb_chroot_local\-includes\fR(1)" 4
119 copy local files into chroot
120 .IP "\fBlb_chroot_packages\fR(1)" 4
121 queue install of packages into chroot
122 .IP "\fBlb_chroot_local\-patches\fR(1)" 4
123 apply local patches against chroot
124 .IP "\fBlb_chroot_local\-preseed\fR(1)" 4
125 use debconf local preseeding file
126 .IP "\fBlb_chroot_packagelists\fR(1)" 4
127 queue install of package lists into chroot
128 .IP "\fBlb_chroot_proc\fR(1)" 4
130 .IP "\fBlb_chroot_resolv\fR(1)" 4
131 manage /etc/resolv.conf
132 .IP "\fBlb_chroot_selinuxfs\fR(1)" 4
134 .IP "\fBlb_chroot_archives\fR(1)" 4
135 manage /etc/apt/sources.list
136 .IP "\fBlb_chroot_sysfs\fR(1)" 4
138 .IP "\fBlb_chroot_sysv\-rc\fR(1)" 4
139 manage /usr/sbin/policy\-rc.d
140 .IP "\fBlb_chroot_task\-lists\fR(1)" 4
141 install task lists into chroot
143 .IP "\fBlb_binary_chroot\fR(1)" 4
144 copy chroot into chroot
145 .IP "\fBlb_binary_debian\-installer\fR(1)" 4
146 install debian\-installer into binary
147 .IP "\fBlb_binary_disk\fR(1)" 4
148 install disk information into binary
149 .IP "\fBlb_binary_grub\fR(1)" 4
150 installs grub into binary
151 .IP "\fBlb_binary_grub2\fR(1)" 4
152 installs grub2 into binary
153 .IP "\fBlb_binary_includes\fR(1)" 4
154 copy files into binary
155 .IP "\fBlb_binary_iso\fR(1)" 4
156 build iso binary image
157 .IP "\fBlb_binary_linux\-image\fR(1)" 4
158 install linux\-image into binary
159 .IP "\fBlb_binary_local\-hooks\fR(1)" 4
160 execute local hooks in binary
161 .IP "\fBlb_binary_local\-includes\fR(1)" 4
162 copy files into binary
163 .IP "\fBlb_binary_local\-packagelists\fR(1)" 4
164 install local package lists into binary
165 .IP "\fBlb_binary_manifest\fR(1)" 4
167 .IP "\fBlb_binary_checksums\fR(1)" 4
168 create binary checksums (md5, sha1, and/or sha256)
169 .IP "\fBlb_binary_memtest\fR(1)" 4
170 installs a memtest into binary
171 .IP "\fBlb_binary_net\fR(1)" 4
172 build netboot binary image
173 .IP "\fBlb_binary_rootfs\fR(1)" 4
175 .IP "\fBlb_binary_syslinux\fR(1)" 4
176 installs syslinux into binary
177 .IP "\fBlb_binary_tar\fR(1)" 4
178 build harddisk binary image
179 .IP "\fBlb_binary_hdd\fR(1)" 4
180 build binary hdd image
181 .IP "\fBlb_binary_win32\-loader\fR(1)" 4
182 installs win32\-loader into binary
184 .IP "\fBlb_source_debian\fR(1)" 4
186 .IP "\fBlb_source_debian\-live\fR(1)" 4
187 copy debian\-live config into source
188 .IP "\fBlb_source_disk\fR(1)" 4
189 install disk information into source
190 .IP "\fBlb_source_iso\fR(1)" 4
191 build iso source image
192 .IP "\fBlb_source_checksums\fR(1)" 4
193 create source checksums (md5, sha1, and/or sha256)
194 .IP "\fBlb_source_net\fR(1)" 4
195 build source net image
196 .IP "\fBlb_source_tar\fR(1)" 4
198 .IP "\fBlb_source_hdd\fR(1)" 4
199 build source hdd image
204 Many live\-build commands make use of files in the \fIconfig/\fR directory to control what they do. Besides the common \fIconfig/common\fR, which is used by all live\-build commands, some additional files can be used to configure the behavior of specific live\-build commands. These files are typically named config/stage or config/stage_helper (where "stage" of course, is replaced with the name of the stage that they belong to, and "helper" with the name of the helper).
206 For example, lb_bootstrap_debootstrap uses files named config/bootstrap and config/bootstrap_debootstrap to read the options it will use. See the man pages of individual commands for details about the names and formats of the files they use. Generally, these files contain variables with values assigned, one variable per line. Some programs in live\-build use pairs of values or slightly more complicated variable assignments.
208 Note that live\-build will respect environment variables which are present in the context of the shell it is running. If variables can be read from config files, then they override environment variables, and if command line options are used, they override values from config files. If no value for a given variable can be found and thus is unset, live\-build will automatically set it to the default value.
210 In some rare cases, you may want to have different versions of these files for different architectures or distributions. If files named config/stage.arch or config/stage_helper.arch, and config/stage.dist or config/stage_helper.dist exist, where "arch" is the same as the output of "dpkg \-\-print\-architecture" and "dist" is the same as the codename of the target distribution, then they will be used in preference to other, more general files.
212 All config files are shell scripts which are sourced by a live\-build program. That means they have to follow the normal shell syntax. You can also put comments in these files; lines beginning with "#" are ignored.
216 .IP "\fB/etc/live/build.conf\fR" 4
217 .IP "\fB/etc/live/build/*\fR" 4
222 \fIlive\-config\fR(7)
224 This program is a part of live\-build.
227 More information about live\-build and the Live Systems project can be found on the homepage at <\fIhttp://live-systems.org/\fR> and in the manual at <\fIhttp://live-systems.org/manual/\fR>.
230 Bugs can be reported by submitting a bugreport for the live\-build package in the Bug Tracking System at <\fIhttp://bugs.debian.org/\fR> or by writing a mail to the Live Systems mailing list at <\fIdebian-live@lists.debian.org\fR>.
233 live\-build was written by Daniel Baumann <\fImail@daniel-baumann.ch\fR>.