Как мне запустить lintian из pbuilder-dist?
Я использую pbuilder-dist
собирать свои пакеты для нестабильной Debian и Precision Ubuntu. Я хочу знать как бегать lintian
(и, возможно, другие команды) внутри определенного chroot.
У меня Ubuntu 12.04 на моей машине.
2 ответа
Lintian можно запустить внутри cowbuilder
или же pbuilder
используя крючки. Несколько примеров доступны в /usr/share/doc/pbuilder/examples/
Просто скопируйте нужный хук в каталог:
mkdir ~/pbuilderhooks
cp /usr/share/doc/pbuilder/examples/B90lintian $HOME/pbuilderhooks
Затем скажите pbuilder использовать хуки в этом каталоге:
echo "HOOKDIR=$HOME/pbuilderhooks/" >> ~/.pbuilderrc
И / или:
echo "HOOKDIR=$HOME/pbuilderhooks/" | sudo tee -a /etc/pbuilderrc
Первый требуется, если вы собираетесь запустить cowbuilder-dist
или же pbuilder-dist
без судо; последний, если вы собираетесь бежать sudo cowbuilder
или же sudo pbuilder
, Используйте tee -a, чтобы избежать перезаписи исходного файла /etc/pbuilderrc.
Запуск debuild -S запустит lintian на source.changes для вас, я полагаю. Lintian также запускается для файла.changes во время двоичной сборки. После того, как вы скомпилировали бинарный и / или исходный пакет, вы можете вручную запустить lintian для любого файла.changes, вот так:
mfisch@caprica:~$ lintian libkqueue_1.0.4-2ubuntu1_amd64.changes
или же
mfisch@caprica:~$ lintian libkqueue_1.0.4-2ubuntu1_source.changes
Вы можете получать разные ошибки или предупреждения lintian от каждой сборки (исходной и двоичной).
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.