MadBlog
Tuesday 27 June 2006

pbuilder custom configurations

I've noticed many times that people don't really use pbuilder with all the power and flexibility it allows. A lot of people don't want to mess up with the configuration files or write their own hooks, whereas it's quite simple, and powerful.

Here are the dotfiles I use with my pbuilder install:

The features those files provides are:

  • the built packages are in ~/debian/results/$(pkg_name)_$(pkg_version) instead of the whole mess in /var/cache/pbuilder/results;
  • this directory is used as an extra local apt source (useful to build packages depending upon not already available packages and test build-depends);
  • use of ccache (thanks to isaac's idea);
  • automatic launch of a shell in the pbuilder chroot if the build fails (installing zsh and vim before);
  • automatic run of the list-missing target (for cdbs-aware packages that include /usr/share/cdbs/1/rules/utils.mk);
  • automatic run of lintian over the packages, and stores the lintian report in ~/debian/results/$(...)/lintian.

There is nothing very new here, but it's a complete setup that some recent/lazy pbuilder users may find useful (it should not need any big modification to be used on anyone's computer).

Also note that the linked files are the one I really use, and that it's meant to evolve with time.

Thursday 22 June 2006

Quote of the day

from #374685:

When you compare against classical UNIX/POSIX privileges, cdrecord needs the following privileges in addition to the UNIX/POSIX basic privs:
[…]
- The ability to use port numbers below 1024
[…]

Yes you obviously need to run an http server to allow remote monitoring of the CD-burn…

Thursday 1 June 2006

pbuilder goodie

so that the built package go into a subdir of your BUILDRESULT directory, just put that in your .pbuilderrc :

#
# hack so that build result is in $(package)_$(version) dir
#

pkg_version=`dpkg-parsechangelog | sed -n 's/^Version: //p'`
pkg_source=`dpkg-parsechangelog | sed -n 's/^Source: //p'`
BUILDRESULT="/home/madcoder/debian/results/${pkg_source}_${pkg_version}"
mkdir -p $BUILDRESULT