Pbuilder
pbuilder is a tool to automatically build packages in a clean chroot of an arbitrary Debian/Ubuntu distribution.
Contents |
Instructions
At the moment it's best to use ragweed for building packages; it has a slightly modified /etc/pbuilderrc and existing distribution images set up for more convenient building of packages.
Same architecture
The first time, create a clean install image using e.g.:
# pbuilder create --distribution feisty
Notably, pbuilder doesn't set up a correct APT /etc/apt/sources.list in the chroot image, so it's best to use pbuilder login --save-after-login once after creating it, and replace its sources.list with an actual correct one.
Then, when you want to build a package using this distribution image, use:
# pbuilder build package.dsc
i386 under amd64
The 64 bit AMD64 kernel can run i386 binaries, so i386 chroots are possible. Using this, i386 packages can be built on an amd64 machine.
Create a new distribution image using another filename:
# pbuilder create --distribution feisty --debootstrapopts --arch --debootstrapopts i386 --basetgz /var/cache/pbuilder/base-i386.tgz
Then to build a 32 bit package:
# linux32 pbuilder build --basetgz /var/cache/pbuilder/base-i386.tgz package.dsc
Modifying the base image
To change something in the base image, for example to add an APT repository, use:
# pbuilder login --save-after-login