I am using
pbuilder-dist to build my packages for Debian unstable and Ubuntu Precise. I want to know how to run
lintian (and possibly other commands) inside a certain chroot.
I have Ubuntu 12.04 on my machine.
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It only takes a minute to sign up.Sign up to join this community
Lintian can be run inside
pbuilder using hooks.
Several examples are available in
Just copy the hook you want to a directory:
mkdir ~/pbuilderhooks cp /usr/share/doc/pbuilder/examples/B90lintian $HOME/pbuilderhooks
Then tell pbuilder to use the hooks in that directory:
echo "HOOKDIR=$HOME/pbuilderhooks/" >> ~/.pbuilderrc
echo "HOOKDIR=$HOME/pbuilderhooks/" | sudo tee -a /etc/pbuilderrc
The first is required if you intend to run
pbuilder-dist without sudo; the latter if you intend to run
sudo cowbuilder or
sudo pbuilder. Use tee -a to avoid overwriting the original /etc/pbuilderrc file.
Running debuild -S will run lintian on the source.changes for you I believe. Lintian is also run on the .changes file during the binary build. Once you've built the binary and/or source package you can manually run lintian against either .changes file, just like this:
mfisch@caprica:~$ lintian libkqueue_1.0.4-2ubuntu1_amd64.changes
mfisch@caprica:~$ lintian libkqueue_1.0.4-2ubuntu1_source.changes
You may get different lintian errors or warnings from each build (source and binary).
If you're trying to move quicker, run pbuilder --login, install the build-deps and run your builds there, that saves you the start-up time from re-installing deps before each build.