cowbuilder8
A pbuilder wrapper for cowdancer.
Usage
cowbuilder create
[options]
cowbuilder update
[options]
cowbuilder build
[options]
.dsc-file
cowbuilder login
[options]
cowbuilder execute
[options]
--
script
[script
options]
cowbuilder dumpconfig
Overview
cowbuilder Executes the specified pbuilder operation with cowdancer
Commands
Most commands invoke pbuilder with the specified commands, see pbuilder manual for details.
create-
Create the base.cow image. The directory for base.cow should be empty, or this command will fail.
update,up,u-
Update the base.cow image.
build,b-
Build a package given a .dsc file
login,l-
Start a session within the base.cow.
execute,e-
Execute a command within the base.cow.
dumpconfig-
Dump configuration information, used for debugging.
Options
Most options are the same as pbuilder, except for the following which are handled specially
-
--buildplace -
The place where COW operation takes place.
-
--basepath -
This has a very different meaning to the
--basetgzoption of pbuilder, since there is no tgz. This option specifies the directory in which the COW master data is stored, the default being/var/cache/pbuilder/base.cow
- --configfile [configuration file to load]
-
Additional configuration file to read after all other configuration files have been read.
-
--no-cowdancer-update -
Do not use cowdancer on cowbuilder update. Please use this option when cowdancer is interfering with upgrade process, or cowdancer itself is being upgraded within chroot.
-
--debian-etch-workaround -
Workaround for Debian Etch. cow-shell will search for all files in the chroot, but will work.
Configuration files
cowbuilder reads the following configuration files per default.
|
Application default, not to be changed. |
|---|---|
|
System-wide default. |
|
User default |
anything specified with --configfile option
|
Additional configuration at runtime. |
Options
The possible configuration options are as follows. Others are ignored.
- DISTRIBUTION=distribution
- BUILDRESULT=directory
- BUILDPLACE=directory
- BASEPATH=path
- MIRRORSITE=http://mirror
NO_COWDANCER_UPDATE=1-
See
--no-cowdancer-update
DEBIAN_ETCH_WORKAROUND=1-
See
--debian-etch-workaround
Examples
- cowbuilder create
-
Create a base.cow image.
# cowbuilder create --hookdir /usr/share/doc/pbuilder/examples/workaround/ --distribution etch --debootstrap debootstrap --basepath /var/cache/pbuilder/base-test.cow bash: /root/.pbuilderrc: No such file or directory W: /home/dancer/.pbuilderrc does not exist I: Running in no-targz mode Distribution is etch. Building the build environment I: running debootstrap /usr/sbin/debootstrap I: Retrieving Release . .
- cowbuilder update
-
Update the base.cow image.
# cowbuilder update bash: /root/.pbuilderrc: No such file or directory I: Copying COW directory I: Invoking pbuilder W: /home/dancer/.pbuilderrc does not exist I: Running in no-targz mode I: copying local configuration I: mounting /proc filesystem I: mounting /dev/pts filesystem I: policy-rc.d already exists Refreshing the base.tgz I: upgrading packages . .
- cowbuilder build test_0.1.dsc
-
Build the package specified in dsc file, with the base.cow image.
- pdebuild --pbuilder cowbuilder
-
Run cowbuilder build against the current directory. The current directory should be an extracted Debian source package directory.
Edit
/etc/pbuilderrcto havePDEBUILD_PBUILDER=cowbuilderto make this the default behavior forpdebuild.
- cowbuilder login --bindmounts /home/dancer
-
Start a cow-shell session inside base.cow, with /home/dancer being bind-mounted to within chroot.
Note that cowbuilder will not cow-protect what is inside
/home/# cowbuilder login --bindmount ${HOME} bash: /root/.pbuilderrc: No such file or directory I: Copying COW directory I: Invoking pbuilder W: /home/dancer/.pbuilderrc does not exist I: Running in no-targz mode I: copying local configuration I: mounting /proc filesystem I: mounting /dev/pts filesystem I: Mounting /home/dancer I: policy-rc.d already exists I: entering the shell #
- cowbuilder create --distribution sid --basepath /var/cache/pbuilder/base-test.cow
-
Create a base.cow image with the path
/var/cache/pbuilder/base-test.cowand distribution sid.
Releases
10 releases since Debian 4.0 (Etch); the text changed 3 times.
--debian-etch-workaround since Debian 5.0 (Lenny);
--no-cowdancer-update since Debian 5.0 (Lenny).
--build until Debian 8 (Jessie);
--create until Debian 8 (Jessie);
--dumpconfig until Debian 8 (Jessie);
--execute until Debian 8 (Jessie);
--login until Debian 8 (Jessie);
--update until Debian 8 (Jessie).