NAME¶
cowbuilder - a pbuilder wrapper for cowdancer.
SYNOPSIS¶
cowbuilder [commands] [options]
DESCRIPTION¶
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
-
Update the base.cow image.
- --build .dsc-file
-
Build a package given a .dsc file
- --login
-
Start a session within the base.cow.
- --execute
-
Execute a command within the base.cow.
- --dumpconfig
-
dump configuration information.
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
- has a very different meaning to basetgz option 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
-
Work around on Debian etch compatibility. cow-shell will search for all
files in chroot, but will work.
CONFIGURATION FILES¶
cowbuilder reads the following configuration files per default.
- /usr/share/pbuilder/pbuilderrc
- Application default, not to be changed.
- /etc/pbuilderrc
- System-wide default.
- ~/.pbuilderrc
- User default
- anything specified with --configfile option
- Additional configuration at runtime.
CONFIGURATION FILE 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
-> Running in no-targz mode
Distribution is etch.
Building the build environment
-> 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
-> Copying COW directory
-> Invoking pbuilder
W: /home/dancer/.pbuilderrc does not exist
-> Running in no-targz mode
-> copying local configuration
-> mounting /proc filesystem
-> mounting /dev/pts filesystem
-> policy-rc.d already exists
Refreshing the base.tgz
-> 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/pbuilderrc
to have
PDEBUILD_PBUILDER=cowbuilder
to make this the default behavior for
pdebuild.
- 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
-> Copying COW directory
-> Invoking pbuilder
W: /home/dancer/.pbuilderrc does not exist
-> Running in no-targz mode
-> copying local configuration
-> mounting /proc filesystem
-> mounting /dev/pts filesystem
-> Mounting /home/dancer
-> policy-rc.d already exists
-> 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.cow
and distribution sid.
AUTHOR¶
Junichi Uekawa (dancer@debian.org)
SEE ALSO¶
/usr/share/doc/pbuilder/pbuilder-doc.html, pbuilder (8
),
pdebuild (1
)