1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
|
.TH "pbuilderrc" 5 "2006 May 24" "Debian" "pbuilder"
.SH NAME
pbuilderrc \- configuration files for personal package builder
.SH DESCRIPTION
.B "/etc/pbuilderrc"
contains default values used in the
.B "pbuilder"
program invocation.
.PP
The file itself is sourced by a shell script, so
it is required that the file conforms to shell script conventions.
.SH "FORMAT"
.TP
.BI "APTCACHE=" "/var/cache/pbuilder/aptcache"
Specify the location that the packages downloaded by apt
should be cached.
Setting this value to "" will cause caching to be
turned off.
.TP
.BI "APTCACHEHARDLINK=" "yes"
Specify using hard links in apt cache handling.
Changing this to no will disable hard linking and will
copy the files.
It is advised to set this to
.B "no"
if you are using user-mode-linux.
.TP
.BI "APTCONFDIR=" "/etc/apt"
Configures where the apt configuration files are copied from.
By default, this value is empty,
allowing the usual configuration options
to take effect.
Setting this variable overrides other options.
.TP
.BI "ARCHITECTURE=" "`dpkg \-\-print\-architecture`"
Specify the default distribution to use.
This option only affects when doing
.B "pbuilder create"
.TP
.BI "AUTOCLEANAPTCACHE=" "yes"
Always run with
.B "\-\-autocleanaptcache"
option.
.TP
.BI "AUTO_DEBSIGN=" "yes"
When this value is set to yes,
.B pdebuild
will invoke debsign command after building.
.TP
.BI "BASETGZ=" "/var/cache/pbuilder/base.tgz"
Specifies the default location for the archived
chroot image to be created and used.
This is overridden with the option
.BR "\-\-basetgz" "."
.TP
.BI "BINDMOUNTS=" "directories-to-bind-mount"
When this value is set, pbuilder will mount these directories using
bind-mount. Do not bind-mount
.B "/"
.br
An Example:
.EX
BINDMOUNTS="/home /mnt/test"
.EE
.TP
.BI "BUILDDIR=" "/build"
The directory inside the chroot where the build happens. This will also be the
.B HOME
of the build user.
Attention! Some directories \(em such as
.B /tmp
\(em are not safe to use since they can be world-writable, and external user can
temper with the build process.
.TP
.BI "BUILDPLACE=" "/var/cache/pbuilder/build/"
The default place which the chroot is constructed.
.B pbuilder
will use the directory
.BR "$BUILDPLACE$$" "."
which means, that it will use the directory and the
PID to determine the directory to use.
This should obtain an unique directory for
concurrent runs of pbuilder in one machine.
This is not guaranteed to happen on network shared drives,
so be aware of this fact when playing with this option
on NFS shared beowulf clusters.
Change it to something like
.I "/var/cache/pbuilder/build/$HOSTNAME/"
when doing such a thing.
.B "pbuilder clean"
cleans up this directory.
.TP
.BI "BUILDRESULT=" "/var/cache/pbuilder/result/"
Specify the default directory which the build result will
be copied over to after the building.
Unlike
.B "\-\-buildresult"
command-line option.
The path is not canonicalized, so you should specify a full-path,
not a relative path.
.TP
.BI "CCACHEDIR=" "/var/cache/pbuilder/ccache"
Specifies where ccache will keep its cached compiler output.
If this is specified, ccache will be installed upon pbuilder create or
pbuilder update, /usr/lib/ccache will be prepended to the PATH,
CCACHEDIR will be bind-mounted in the chroot, and CCACHE_DIR will be
set to CCACHEDIR. Note that files in CCACHEDIR are chowned to
BUILDUSERID (1234 by default).
.TP
.BI "BUILDRESULTUID="
.TP
.BI "BUILDRESULTGID="
Set the UID and GID of the files built as result.
They probably need to be set to numeric UID values,
so that it works the same inside the chroot and outside the
chroot.
If sudo is used, the values specified by sudo is used.
They are
.BR "SUDO_UID" ", and"
.BR "SUDO_GID" ". "
The default value is
.B "0"
.TP
.BI "BUILDSOURCEROOTCMD=" "fakeroot"
This option is used on invocation of fakeroot
for
.B "dpkg\-buildpackage"
in
.B "pdebuild"
.TP
.BI "BUILDUSERID=" "1234"
The uid to be used inside chroot.
It should ideally not collide with user-id outside the chroot,
to avoid user inside chroot having access to
processes owned by the user id outside the chroot.
.TP
.BI "BUILDUSERNAME=" "pbuilder"
The user name of the user the build will run as.
Specifying this will enable the use of fakeroot inside
pbuilder.
Note that this will require fakeroot to be installed within
the chroot, and fakeroot will automatically be installed.
And
.B "\-rfakeroot"
will be added to
.B "DEBBUILDOPTS"
.TP
.BI "COMPONENTS=" "main"
Specify the default distribution components to use.
This option is space-delimited, use quotes when listing multiple components.
This option only affects when doing
.B "pbuilder create"
or when
.B "\-\-override\-config"
is specified for
.B "pbuilder update"
option.
.TP
.BI "COMPRESSPROG=" "gzip"
Program to use for compression and decompression of the base.tgz.
The default is to use gzip, and any program that can be used for
the \-\-use\-compress\-program option of tar can be given.
If set to "pigz", compression and decompression is gzip compatible
but will use all available CPUs.
.TP
.BI "export http_proxy=" "http://your-proxy:8080/"
Defines the proxy for http connection.
.TP
.BI "export DEBIAN_BUILDARCH=" "athlon"
Uses this variable as
.BR "DEBIAN_BUILDARCH" "."
This trick can be used for other environmental variables as well.
.TP
.BI "DEBBUILDOPTS=" ""
The options given here will be passed on to
.BR dpkg\-buildpackage .
This can be useful e.g. for binary-only builds. The command-line option
.B "\-\-debbuildopts" will be appended to any contents specified here but
may also be used to reset the list of options.
The default value is to build source and binary package.
.TP
.BI "DEBOOTSTRAPOPTS=" "( '\-\-variant=buildd' '\-\-keyring' '/usr/share/keyrings/debian\-archive\-keyring.gpg' )"
When this option is set to
.B "\-\-variant=buildd"
.B "pbuilder"
will invoke
.B "$DEBOOTSTRAP"
with
.B "\-\-variant=buildd"
option, which results in debootstrap creating a minimal chroot for
buildd instead of trying to create a minimal installation chroot.
.B "\-\-keyring"
is used to specify a keyring for debootstrap.
.TP
.BI "APTKEYRINGS=" "()"
Additional keyrings to use for package verification with apt, not used for
debootstrap (use
.B "$DEBOOTSTRAPOPTS"
). Use this to add (local) signed repositories. By default the
debian-archive-keyring package inside the chroot is used.
.TP
.BI "DEBOOTSTRAP=" "debootstrap"
Use this option to switch the implementation of
debootstrap.
Known implementations of debootstrap are
.B "cdebootstrap"
and
.B "debootstrap"
.TP
.BI "DEBEMAIL=" "Maintainer Name <Mail@Address>"
If this was specified,
.B dpkg\-buildpackage
command will be passed with the necessary sponsorship option
.B "\-mMaintainer Name <Mail@Address>"
on building.
Overridden with
.B "\-\-debemail"
command-line option.
The default configuration for
.B pbuilder
is empty for this value.
.TP
.BI "export DEBIAN_FRONTEND=" "noninteractive"
Sets interactiveness of pbuilder run.
Setting this value to blank will cause the
pbuilder run to be interactive.
Change this value when noninteractive upgrades
do not work.
.TP
.BI "DISTRIBUTION=" "sid"
Specify the default distribution to use.
This option only affects when doing
.B "pbuilder create"
or when
.B "\-\-override\-config"
is specified for
.B "pbuilder update"
option.
.TP
.BI "EXTRAPACKAGES=" """ccache lintian XXX"""
Specifies extra packages which the system should install
in the chroot on
.BR "pbuilder create" "."
This is a space-delimited list.
Also this is installed on
.B "pbuilder update"
.TP
.BI "HOOKDIR=" "/usr/lib/pbuilder/hooks"
Specifies the default location for the user hooks
directory.
This is overridden with the option
.BR "\-\-hookdir" "."
If this is specified, hooks are searched for in
the chroot, when running
.BR "pbuilder" "."
If it is not defined, or is an empty string,
hooks are not executed.
For details, see
.B "pbuilder(8)"
.TP
.BI "MIRRORSITE=" "http://www.jp.debian.org/debian"
Specify the mirror site which contains the
main Debian distribution.
Note that you cannot really use
.B "file:/"
kind of URL, because the location needs to be accessible from within
the chroot.
.TP
.BI "OTHERMIRROR=" "deb http://xxx/xxx/ ./ " "[|" " other deb lines... " "]"
The lines which is added to the sources.list, delimited with
.B "|"
Like:
.br
.B "deb http://local/mirror sid main|deb file:/usr/local/mirror ./"
The deb lines here are the ones that will appear at the top of the
.B "sources.list"
inside the chroot.
Be sure to follow the syntax rules of
.BR "sources.list" "(5)."
These lines appear at the beginning of the
constructed sources file, so this is the place to list your
.B "local"
mirror sites; apt will then use them in preference to the ones
listed in
.B "MIRRORSITE".
To make changes on mirror site effective on
.B update
.B "\-\-override\-config"
needs to be specified.
.TP
.BI "PDEBUILD_PBUILDER=" "pbuilder"
Specify what pbuilder implementation to use for pdebuild.
The currently possible values are
.B "pbuilder"
and
.B "cowbuilder"
.TP
.BI "PKGNAME_LOGFILE_EXTENSION=" "_$(dpkg \-\-print\-architecture).build"
The extension of filename used in pkgname\-logfile option.
.TP
.BI "PKGNAME_LOGFILE=" "yes"
Always run with
.B "\-\-pkgname\-logfile"
option, and create a logfile named after the package name.
.TP
.BI "PBUILDERROOTCMD=" "sudo \-E"
This option is used on invocation of
.B "pbuilder build"
in
.B "pdebuild"
.TP
.BI "PBUILDERSATISFYDEPENDSCMD=" "/usr/lib/pbuilder/pbuilder\-satisfydepends"
This option is used by various parts of pbuilder to satisfy
(i.e. install) the build-dependencies of a package. There are four
implementations:
The "experimental" implementation,
"pbuilder\-satisfydepends\-experimental", which might be useful to pull
packages from experimental or from repositories with a low APT Pin
Priority.
The "aptitude" implementation, which will resolve build-dependencies
and build-conflicts with aptitude which helps dealing with complex
cases but does not support unsigned APT repositories.
The "gdebi" implementation, which will resolve build-dependencies
using gdebi tool, faster than classic implementation, and does not
require installation of a dummy package like the aptitude
implementation.
The "classic" implementation, which was the original implementation
used until 0.172.
The default is now "aptitude".
.TP
.BI "PBUILDERSATISFYDEPENDSOPT=" "()"
Array of flags to give to pbuilder\-satisfydepends.
.TP
.BI "ALLOWUNTRUSTED=" "no"
Allow untrusted (no key installed) and unsigned repositories.
.BI Warning:
Enabling this option may allow remote attackers to compromise the system.
Better use signed repositories and
.B "$APTKEYRINGS"
to add the key(s).
.TP
.BI "APTGETOPT=" "()"
Extra flags to give to apt\-get.
.TP
.BI "APTITUDEGETOPT=" "()"
Extra flags to give to aptitude.
.TP
.BI "REMOVEPACKAGES=" "lilo"
Specify the packages to be removed on creation of
.B base.tgz
Leaving lilo in the chroot is like keeping a timebomb...
.TP
.BI "TIMEOUT_TIME=" "2h"
Sets timeout time.
Build will be stoped with SIGTERM after the set time.
.TP
.BI "USEDEVFS=" "no"
Whether to use DEVFS or not.
.TP
.BI "USEDEVPTS=" "yes"
Specify
.B yes
when it is desired to mount
.B /dev/pts
interface. It is usually a good idea, since there
are many software which fail miserably when there is no
.B /dev/pts
being mounted.
.TP
.BI "USENETWORK=" "no"
Specify
.B yes
when you do not want to disable network access during build.
Network is not available on a Debian buildd, so you might
want to keep the default.
Disabling network access currently only works on Linux.
.TP
.BI "USERUNSHM=" "yes"
Specify
.B yes
when it is desired to mount
.B /run/shm
mount point. It is usually a good idea in order to work with software that expect shm to work.
.TP
.BI "USE_PDEBUILD_INTERNAL=" "yes"
When this option is set to
.I yes
.B "pdebuild\-internal"
implementation of
.B pdebuild
is used.
.TP
.BI "USEPROC=" "yes"
Specify
.B yes
when it is desired to mount
.B /proc
interface. It is usually a good idea, since there are many
software which fail miserably when there is no
.B /proc
being mounted.
.TP
.BI "ADDITIONAL_BUILDRESULTS="""
Array of additional files to copy out of the build area.
.SH "AUTHOR"
Initial coding, and main maintenance is done by
Junichi Uekawa <dancer@debian.org>.
User hooks code added by Dale Amon <amon@vnl.com>
The homepage is available at
.B "\%http://pbuilder.alioth.debian.org"
.SH "FILES"
.I "/etc/pbuilderrc, $HOME/.pbuilderrc"
.SH "SEE ALSO"
.BR "/usr/share/doc/pbuilder/pbuilder\-doc.html" ", "
.BR "cowbuilder" "(8), "
.BR "pbuilder" "(8), "
.BR "pdebuild" "(1)"
\" LocalWords: interactiveness noninteractive pdebuild pbuilder buildd
\" LocalWords: pbuilderrc
|