pbuilderrc - configuration files for personal package builder
/etc/pbuilderrc contains default values used in the
pbuilder program invocation.
The file itself is sourced by a shell script, so it is required
that the file conforms to shell script conventions.
The environment variable PBUILDER_OPERATION contains the
current operation mode of pbuilder, and can be used to do a conditional
configuration. Possible values are build, clean,
create, debuild, dumpconfig, execute,
login, update.
- 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.
- 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 no if you are using
user-mode-linux.
- 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.
- ARCHITECTURE=`dpkg
--print-architecture`
- Specifies the build architecture (as described in
dpkg-architecture(1)). It'll be the architecture used when creating
the chroot, defaults to the
system one. The supported values are the ones debootstrap supports.
- AUTOCLEANAPTCACHE=yes
- Always run with --autocleanaptcache option.
- AUTO_DEBSIGN=yes
- When this value is set to yes, pdebuild will invoke debsign command
after building.
- 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 --basetgz.
- BINDMOUNTS=directories-to-bind-mount[:internal-mountpoint]
- When this value is set, pbuilder will mount these directories using
bind-mount. Different directories are space separated, a column can
optionally specify a mount destination inside the chroot.
Do not bind-mount /.
An Example:
BINDMOUNTS="/home /mnt/test /home/joe/repo:/var/repo"
- BUILDDIR=/build
- The directory inside the chroot where the build happens. This directory
will contain the build products; the source packages will be unpacked in a
subdirectory therein contained, named $srcpkg-$ver, with
$ver being the upstream part of the version, without epoch and
debian revision.
Attention! Some directories — such as /tmp
— are not safe to use since they can be world-writable, and
external users can temper with the build process.
- BUILDPLACE=/var/cache/pbuilder/build/
- The default place which the chroot is constructed. pbuilder will
use the directory $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 /var/cache/pbuilder/build/$HOSTNAME/
when doing such a thing.
pbuilder clean cleans up this directory.
- BUILDRESULT=/var/cache/pbuilder/result/
- Specify the default directory which the build result will be copied over
to after the building.
Unlike the --buildresult command-line option the path
is not canonicalized, so you should specify a full path, not a relative
path.
- EATMYDATA=no
- Enable or disable the builtin eatmydata support.
For this to work the library of the same architecture as the one inside the
chroot has to be installed in the host.
- CCACHEDIR=
- 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
(ccache variable) will be set to CCACHEDIR. Note that files in
CCACHEDIR are chowned to BUILDUSERID (1234 by default).
ccache is disabled by default.
- BUILDRESULTUID=
- 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 SUDO_UID, and SUDO_GID. The default value is
0
- BUILDSOURCEROOTCMD=fakeroot
- This option is used on invocation of fakeroot for dpkg-buildpackage
in pdebuild
- 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.
- 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
-rfakeroot will be added to DEBBUILDOPTS
- 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 pbuilder create or when
--override-config is specified for pbuilder update
option.
- COMPRESSPROG=gzip
- Program to use for compression of the base.tgz. The default is to use
gzip, and any program that can be used to compress data using a pipe can
be used.
If set to "pigz", compression and decompression is
gzip compatible but will use all available CPUs.
If set to "cat", there will be no compression at all (so
compression/decompression will be a lot faster but takes much more space
on the disk).
- export
http_proxy=http://your-proxy:8080/
- Defines the proxy for http connection.
- export
DEBIAN_BUILDARCH=athlon
- Uses this variable as DEBIAN_BUILDARCH. This trick can be used for
other environmental variables as well.
- DEBBUILDOPTS=
- The options given here will be passed on to dpkg-buildpackage. This
can be useful e.g. for binary-only builds. The command-line option
--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.
- DEBOOTSTRAPOPTS=(
'--variant=buildd' '--keyring'
'/usr/share/keyrings/debian-archive-keyring.gpg' )
- When this option is set to --variant=buildd pbuilder will
invoke $DEBOOTSTRAP with --variant=buildd option, which
results in debootstrap creating a minimal chroot for buildd instead of
trying to create a minimal installation chroot. --keyring is used
to specify a keyring for debootstrap.
- APTKEYRINGS=()
- Additional keyrings to use for package verification with apt, not used for
debootstrap (use $DEBOOTSTRAPOPTS). Use this to add (local) signed
repositories. By default the debian-archive-keyring package inside the
chroot is used.
Keyrings are copied into /etc/apt/trusted.gpg.d in the
chroot. APT supports it since version 0.7.25.1, firstly available in the
Debian release codenamed "squeeze" (released on 2011). For
older chroots, use a G hook to run apt-key manually.
- DEBOOTSTRAP=debootstrap
- Use this option to switch the implementation of debootstrap. Known
implementations of debootstrap are cdebootstrap and
debootstrap
- 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.
- DISTRIBUTION=sid
- Specify the default distribution to use. This option only affects when
doing pbuilder create or when --override-config is specified
for pbuilder update option.
- Specifies extra packages which the system should install in the chroot on
pbuilder create. This is a space-delimited list. Also this is
installed on pbuilder update
- HOOKDIR=/usr/lib/pbuilder/hooks
- Specifies the default location for the user hooks directory. This is
overridden with the option --hookdir.
If this is specified, hooks are searched for in the chroot,
when running pbuilder. If it is not defined, or is an empty
string, hooks are not executed.
For details, see pbuilder(8)
- LOGLEVEL=I
- Specify how much output you want from pbuilder, valid values are E
(errors only), W (errors and warnings), I (errors, warnings
and informational) and D (everything including some debug
messages).
- USECOLORS=auto
- Specify whether you'd like to see colored output from pbuilder. Valid
values are auto (to try to automatically detect whether the
terminal supports them), yes (to always use colors), and no
(to never use colors).
- MIRRORSITE=http://www.jp.debian.org/debian
- Specify the mirror site which contains the main Debian distribution.
Note that you cannot really use file:/ kind of URL,
because the location needs to be accessible from within the chroot.
- OTHERMIRROR=deb
http://xxx/xxx/ ./ [| other deb lines... ]
- The lines which is added to the sources.list, delimited with |
Like:
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 sources.list inside the chroot. Be sure to follow the syntax
rules of sources.list(5). These lines appear at the beginning of
the constructed sources file, so this is the place to list your
local mirror sites; apt will then use them in preference to the
ones listed in MIRRORSITE .
To make changes on mirror site effective on update
--override-config needs to be specified.
- PDEBUILD_PBUILDER=pbuilder
- Specify what pbuilder implementation to use for pdebuild. The currently
possible values are pbuilder and cowbuilder
- PKGNAME_LOGFILE_EXTENSION=_$(dpkg
--print-architecture).build
- The extension of filename used in pkgname-logfile option.
- PKGNAME_LOGFILE=yes
- Always run with --pkgname-logfile option, and create a logfile
named after the package name.
- PBUILDERROOTCMD=sudo
-E
- This option is used on invocation of pbuilder build in
pdebuild
- 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. These are the available
implementations:
pbuilder-satisfydepends-apt the newest implementation,
which leverage the ability of apt 1.4 to satisfy build dependencies and
build conflicts from a .dsc; useful since it's pretty fast and doesn't
require the installation of any non-required package in the chroot, nor
of dummy packages.
pbuilder-satisfydepends-experimental might be useful to
pull packages from repositories with a low APT Pin Priority (for
example, Debian's experimental or stable-backports).
pbuilder-satisfydepends-aptitude will resolve
build-dependencies and build-conflicts with aptitude which helps dealing
with complex cases but does not support unsigned APT repositories.
pbuilder-satisfydepends-gdebi will resolve
build-dependencies using gdebi, faster than classic implementation, and
does not require installation of a dummy package like the aptitude
implementation.
pbuilder-satisfydepnds-classic the "classic"
implementation, which was the original implementation used by default
until v0.172.
The default is now "aptitude".
- PBUILDERSATISFYDEPENDSOPT=()
- Array of flags to give to pbuilder-satisfydepends.
- SOURCE_ONLY_CHANGES=no
- Specify whether to generate an additional .changes file for a source-only
upload, whilst still producing a full .changes file for any binary
packages built.
- ALLOWUNTRUSTED=no
- Allow untrusted (no key installed) and unsigned repositories.
Warning: Enabling this option may allow remote attackers to
compromise the system. Better use signed repositories and
$APTKEYRINGS to add the key(s).
- APTGETOPT=()
- Extra flags to give to apt-get.
- APTITUDEGETOPT=()
- Extra flags to give to aptitude.
- DEBDELTA=no
- Enable use of debdelta to download the needed updated in the chroot, if
debdelta is already installed.
- REMOVEPACKAGES=lilo
- Specify the packages to be removed on creation of base.tgz Leaving
lilo in the chroot is like keeping a timebomb...
- TIMEOUT_TIME=2h
- Sets timeout time. Build will be stopped with SIGTERM after the set
time.
- USEDEVFS=no
- Whether to mount a devfs or not. Has no effect on kFreeBSD, as a devfs
(and fdescfs for /dev/fd) is always used.
- USEDEVPTS=yes
- Specify yes when it is desired to mount /dev/pts interface.
It is usually a good idea, since there are many software which fail
miserably when there is no /dev/pts being mounted.
- USESYSFS=yes
- Whether to mount a sysfs (linsysfs for kFreeBSD) in /sys or not.
Has no effect on GNU/Hurd hosts, where sysfs is not available. It is
usually a good idea, since there are several software which require
/sys being populated.
- USENETWORK=no
- Specify 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.
- USECGROUP=yes
- Specify yes to use a cgroup to isolate build processes, so that any
stray processes from the build can be cleaned up afterwords. This
currently only works on Linux systems running systemd.
- USESHM=yes
- Specify yes when it is desired to mount /dev/shm mount
point. It is usually a good idea in order to work with software that
expects shm to work.
/run/shm will be configured as a symbolic link to /dev/shm.
This option used to be named USERUNSHM, for compatibility purpose the
old name is still supported, and if set it'll override any USESHM.
Has no effect on GNU/Hurd hosts due to bugs in /hurd/tmpfs; since
/dev is always bind-mounted, the host's /dev/shm will be used.
- USE_PDEBUILD_INTERNAL=yes
- When this option is set to yes pdebuild-internal
implementation of pdebuild is used.
- USEPROC=yes
- Specify yes when it is desired to mount /proc interface. It
is usually a good idea, since there are many software which fail miserably
when there is no /proc being mounted.
- ADDITIONAL_BUILDRESULTS=(foo
"bar*" "baz\ biz")
- Array of additional files to copy out of the build area.
In case a wildcard is needed (e.g. *.changes) quote it to have the
wildcard escaped and not expanded at configuration load time, but instead
expanded at run time when the additional build artifacts are exported.
Spaces in file names needs to be escaped by using a \ or a wildcard to
match the space.
- CONFDIR=/etc/pbuilder/conf_files
- pbuilder copies some configuration files (like /etc/hosts or
/etc/hostname) from the host system into the chroot. If the
directory specified here exists and contains one of the copied files
(without the leading /etc) that file will be copied from here instead of
the system one.
- BUILD_HOME=/nonexistent
- Set the what the HOME environment variable points to during the
builds. It defaults to a non-existing directory to prevent builds from
writing to HOME, which is reserved to users. If you need a working HOME
you can set it to $BUILDDIR instead.
- BINNMU_MAINTAINER=
- Set the value of the maintainer name and email in the changelog during
binNMU. Such value is then copied to the Changed-By field of the .changes
file. Can be set at run time with the --bin-nmu-maintainer command
line option.
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
https://pbuilder-team.pages.debian.net/pbuilder/
/etc/pbuilderrc, $HOME/.pbuilderrc