live-build.7 9.58 KB
Newer Older
1
.TH LIVE\-BUILD 7 2015\-04\-26 5.0~a4-1 "Live Systems Project"
Daniel Baumann's avatar
Daniel Baumann committed
2
3

.SH NAME
4
\fBlive\-build\fR \- the live systems tool suite
Daniel Baumann's avatar
Daniel Baumann committed
5
6

.SH SYNOPSIS
7
.\" FIXME
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]
9
.\" FIXME
10
11

.SH DESCRIPTION
12
.\" FIXME
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.
14
.PP
15
The \fICOMMAND\fR is a name of a live\-build command (see below).
16
.PP
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>.
18
.\" FIXME
Daniel Baumann's avatar
Daniel Baumann committed
19

20
.SH OPTIONS
21
.\" FIXME
22
23
.SS Shared live\-build options
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
27
show usage and exit.
28
.IP "\fB-v, \-\-version\fR" 4
29
output version information and exit.
30
31
.SS Common live\-build options
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.
Daniel Baumann's avatar
Daniel Baumann committed
32
.IP "\fB\-\-breakpoints\fR" 4
33
run with breakpoints.
Daniel Baumann's avatar
Daniel Baumann committed
34
.IP "\fB\-\-conffile\fR" 4
35
use custom configuration file.
Daniel Baumann's avatar
Daniel Baumann committed
36
.IP "\fB\-\-debug\fR" 4
37
show debug information.
Daniel Baumann's avatar
Daniel Baumann committed
38
39
.IP "\fB\-\-force\fR" 4
force helper execution, even if stage file exists.
Daniel Baumann's avatar
Daniel Baumann committed
40
.IP "\fB\-\-quiet\fR" 4
41
be quiet.
Daniel Baumann's avatar
Daniel Baumann committed
42
.IP "\fB\-\-verbose\fR" 4
43
be verbose.
44
.\" FIXME
Daniel Baumann's avatar
Daniel Baumann committed
45

46
.SH LIVE\-BUILD COMMANDS
47
.\" FIXME
48
We divide live\-build into high level ("porcelain") commands and low level ("plumbing") commands.
Daniel Baumann's avatar
Daniel Baumann committed
49
.PP
50
Here is the complete list of all available live\-build commands. See their man
51
pages for additional documentation.
52
.\" FIXME
53
54

.SH HIGH\-LEVEL COMMANDS (PORCELAIN)
55
.\" FIXME
56
57
We separate the porcelain commands into the main commands and some ancillary user utilities.
.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
70
clean up system build directories
.SS Ancillary Commands
71
.IP "\fBlb\fR(1)" 4
72
generic live\-build wrapper
73
.IP "\fBlb_build\fR(1)" 4
74
alias for all stages
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
79
.\" FIXME
80

81
82
.SH LOW\-LEVEL COMMANDS (PLUMBING)
.\" FIXME
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.
Daniel Baumann's avatar
Daniel Baumann committed
84
.PP
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
88
cache bootstrap stage
89
.IP "\fBlb_bootstrap_debootstrap\fR(1)" 4
90
91
bootstrap a Debian system with debootstrap(8)
.SS Chroot commands
92
.IP "\fBlb_chroot_apt\fR(1)" 4
93
manage /etc/apt/apt.conf
94
.IP "\fBlb_chroot_cache\fR(1)" 4
95
cache chroot stage
96
.IP "\fBlb_chroot_debianchroot\fR(1)" 4
97
manage /etc/debian_chroot
98
.IP "\fBlb_chroot_devpts\fR(1)" 4
99
mount /dev/pts
100
.IP "\fBlb_chroot_dpkg\fR(1)" 4
101
manage /sbin/dpkg
102
.IP "\fBlb_chroot_hacks\fR(1)" 4
103
execute hacks in chroot
104
.IP "\fBlb_chroot_hostname\fR(1)" 4
105
manage /bin/hostname
106
.IP "\fBlb_chroot_hosts\fR(1)" 4
107
manage /etc/hosts
108
.IP "\fBlb_chroot_install\-packages\fR(1)" 4
109
install queued packages into chroot
110
.IP "\fBlb_chroot_interactive\fR(1)" 4
111
make build interactive
112
.IP "\fBlb_chroot_linux\-image\fR(1)" 4
113
manage /etc/kernel\-img.conf
114
.IP "\fBlb_chroot_hooks\fR(1)" 4
115
execute local hooks in chroot
116
.IP "\fBlb_chroot_local\-includes\fR(1)" 4
117
copy local files into chroot
118
119
.IP "\fBlb_chroot_packages\fR(1)" 4
queue install of packages into chroot
120
.IP "\fBlb_chroot_local\-patches\fR(1)" 4
121
apply local patches against chroot
122
.IP "\fBlb_chroot_local\-preseed\fR(1)" 4
123
use debconf local preseeding file
124
125
.IP "\fBlb_chroot_packagelists\fR(1)" 4
queue install of package lists into chroot
126
.IP "\fBlb_chroot_proc\fR(1)" 4
127
mount /proc
128
.IP "\fBlb_chroot_resolv\fR(1)" 4
129
manage /etc/resolv.conf
130
.IP "\fBlb_chroot_selinuxfs\fR(1)" 4
131
mount /selinux
132
.IP "\fBlb_chroot_archives\fR(1)" 4
133
manage /etc/apt/sources.list
134
.IP "\fBlb_chroot_sysfs\fR(1)" 4
135
mount /sys
136
.IP "\fBlb_chroot_sysv\-rc\fR(1)" 4
137
manage /usr/sbin/policy\-rc.d
138
139
.IP "\fBlb_chroot_task\-lists\fR(1)" 4
install task lists into chroot
140
.SS Binary commands
141
.IP "\fBlb_binary_chroot\fR(1)" 4
142
copy chroot into chroot
143
.IP "\fBlb_binary_debian\-installer\fR(1)" 4
144
install debian\-installer into binary
145
.IP "\fBlb_binary_disk\fR(1)" 4
146
install disk information into binary
147
.IP "\fBlb_binary_grub\fR(1)" 4
148
installs grub into binary
149
.IP "\fBlb_binary_grub2\fR(1)" 4
150
installs grub2 into binary
151
.IP "\fBlb_binary_includes\fR(1)" 4
152
copy files into binary
153
.IP "\fBlb_binary_iso\fR(1)" 4
154
build iso binary image
155
.IP "\fBlb_binary_linux\-image\fR(1)" 4
156
install linux\-image into binary
157
.IP "\fBlb_binary_local\-hooks\fR(1)" 4
158
execute local hooks in binary
159
.IP "\fBlb_binary_local\-includes\fR(1)" 4
160
copy files into binary
161
162
.IP "\fBlb_binary_local\-packagelists\fR(1)" 4
install local package lists into binary
163
.IP "\fBlb_binary_manifest\fR(1)" 4
164
create manifest
165
.IP "\fBlb_binary_checksums\fR(1)" 4
166
create binary checksums (md5, sha1, and/or sha256)
167
.IP "\fBlb_binary_memtest\fR(1)" 4
168
installs a memtest into binary
169
.IP "\fBlb_binary_net\fR(1)" 4
170
build netboot binary image
171
.IP "\fBlb_binary_rootfs\fR(1)" 4
172
build rootfs image
173
.IP "\fBlb_binary_syslinux\fR(1)" 4
174
installs syslinux into binary
175
.IP "\fBlb_binary_tar\fR(1)" 4
176
build harddisk binary image
177
178
.IP "\fBlb_binary_hdd\fR(1)" 4
build binary hdd image
179
.IP "\fBlb_binary_win32\-loader\fR(1)" 4
180
installs win32\-loader into binary
181
.SS Source commands
182
.IP "\fBlb_source_debian\fR(1)" 4
183
download sources
184
.IP "\fBlb_source_debian\-live\fR(1)" 4
185
copy debian\-live config into source
186
.IP "\fBlb_source_disk\fR(1)" 4
187
install disk information into source
188
.IP "\fBlb_source_iso\fR(1)" 4
189
build iso source image
190
.IP "\fBlb_source_checksums\fR(1)" 4
191
create source checksums (md5, sha1, and/or sha256)
192
.IP "\fBlb_source_net\fR(1)" 4
193
build source net image
194
.IP "\fBlb_source_tar\fR(1)" 4
195
build source tarball
196
197
.IP "\fBlb_source_hdd\fR(1)" 4
build source hdd image
198
.\" FIXME
Daniel Baumann's avatar
Daniel Baumann committed
199

200
.SH CONFIG FILES
201
.\" FIXME
202
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).
203
.PP
204
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.
205
.PP
206
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.
207
208
209
.PP
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.
.PP
210
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.
211
212
213
.\" FIXME

.SH FILES
214
.IP "\fB/etc/live/build.conf\fR" 4
215
.IP "\fB/etc/live/build/*\fR" 4
216
217

.SH SEE ALSO
218
219
220
\fIlive\-boot\fR(7)
.PP
\fIlive\-config\fR(7)
221
.PP
222
This program is a part of live\-build.
Daniel Baumann's avatar
Daniel Baumann committed
223
224

.SH HOMEPAGE
225
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>.
226
227

.SH BUGS
228
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>.
Daniel Baumann's avatar
Daniel Baumann committed
229
230

.SH AUTHOR
231
live\-build was written by Daniel Baumann <\fImail@daniel-baumann.ch\fR>.