PbuilderHowto
Size: 4007
Comment: updated to dapper
|
Size: 4011
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 50: | Line 50: |
If you reach this point you now have a Hoary chroot located at /var/cache/pbuilder ready to build a package. We will get a Debian source package from Ubuntu repository to test it. | If you reach this point you now have a Breezy chroot located at /var/cache/pbuilder ready to build a package. We will get a Debian source package from Ubuntu repository to test it. |
Line 71: | Line 71: |
You can build the package using your Hoary chroot with the command: | You can build the package using your Breezy chroot with the command: |
Line 93: | Line 93: |
OTHERMIRROR="deb http://archive.ubuntu.com/ubuntu hoary universe multiverse" | OTHERMIRROR="deb http://archive.ubuntu.com/ubuntu breezy universe multiverse" |
Line 99: | Line 99: |
sudo pbuilder update --distribution hoary --override-config | sudo pbuilder update --distribution breezy --override-config |
Introduction
This document describes the steps to setup a chroot jail for building Ubuntu packages using pbuilder. It is recommended for Ubuntu maintainers or anyone interested in building packages using Ubuntu
You can build packages without pbuilder but you must already have all the build dependencies of the package that you are building installed on your running system.
The following assume you want to install "breezy". If you need a "hoary" or "dapper" chroot, then exchange "breezy" with the appropriate distribtion.
Installing Pbuilder
Install pbuilder package.
Edit /etc/pbuilder/pbuilderrc changing the following directives:
MIRRORSITE=http://archive.ubuntu.com/ubuntu DISTRIBUTION=breezy
Since pbuilder will complain about unauthenticated packages, you have to allow unauthenticated packages. You can make it like so:
Edit your /etc/pbuilder/pbuilderrc:
APTCONFDIR="/etc/pbuilder/apt.config/"
Now you'll copy needed files of /etc/apt to it and
sudo mkdir /etc/pbuilder/apt.config/ sudo cp -ar /etc/apt/* /etc/pbuilder/apt.config/ sudo touch /etc/pbuilder/apt.config/apt.conf.d/allow-unauthenticated
and add the following line to /etc/pbuilder/apt.config/apt.conf.d/allow-unauthenticated
APT::Get::AllowUnauthenticated 1;
NOTE: Make sure to remove 99update-notifier from /etc/pbuilder/apt.config/apt.conf.d/ if you have copied it in the last step. It can potentially break future updates to your pbuilder chroot, as update-notifier won't normally be installed.
Save the file and run the command below to build your breezy chroot:
sudo pbuilder create --distribution breezy
Rebuilding a package
If you reach this point you now have a Breezy chroot located at /var/cache/pbuilder ready to build a package. We will get a Debian source package from Ubuntu repository to test it.
To check if you can download source packages, you will need an uncommented deb-src line in /etc/apt/sources.list, containing:
deb-src http://archive.ubuntu.com/ubuntu breezy main restricted
If the line above is there but not uncommented, uncomment it. Make sure your package index files are synchronized so that apt-get knows where to find the sources:
sudo apt-get update
We will build bc, a simple calculator, from source, let's download the debian source package from ubuntu repository:
sudo apt-get source bc
You can build the package using your Breezy chroot with the command:
sudo pbuilder build *.dsc
In the end, the binary and source package will be at /var/cache/pbuilder/result/
Updating a chroot
I recommend you update your chroot before each build, to this task use the comand below:
sudo pbuilder update
Universe support
If you want to rebuild a package from universe or build a new one that needs a package out of main you will need to edit /etc/pbuilderrc again, changing:
OTHERMIRROR="deb http://archive.ubuntu.com/ubuntu breezy universe multiverse"
Now you need to update your chroot with the new configuration:
sudo pbuilder update --distribution breezy --override-config
Upgrading to Latest Development Release
If you want to participate in the current release cycle, you will want to have a DapperDrake chroot. Sometimes, the development version may not be installable directly. In this case, you have to install the latest release first, and upgrade then to development release
change all occurences of breezy in /etc/pbuilderrc and /etc/pbuilder/apt.config/ to dapper
sudo pbuilder update --override-config
- use the --override-config option every time you run the update
See also
pbuilder User's Manual: http://www.netfort.gr.jp/~dancer/software/pbuilder-doc/pbuilder-doc.html
CategoryDocumentation ["CategoryMOTU"]
PbuilderHowto (last edited 2020-01-28 13:36:36 by paelzer)