Rebuilding debian/ubuntu packages

Jun 22, 2009 20:57

  • Don't use debian/rules binary; use debuild. It'll properly clear the environment, use fakeroot by default, etc. It defaults to unsigned source and unsigned changes (-us -uc),
  • use --no-lintian arg to debuild to save time
  • debuild understands -j 4 (where "4" is num concurrent jobs) like make
  • -nc is handy if you want to do repeated rebuilds. It won't clean the source tree before building.
  • Otherwise use -tc to save space by cleaning source tree after building

When giving build instructions tell people to use wget -O - | patch.

Pin updated packages in /etc/apt/preferences, eg:

Package: nautilus Pin: version 2.26.2-0ubuntu1* Pin-Priority: 1001
The following shell snippet will generate pinning entries for all *.deb files in the current directory and append them to your apt preferences:

for f in *.deb; do dpkg-deb -e $f sed -e '/^Package: / p' \ -e '/^Version: / s/Version: \(.*\)$/Pin: version \1 origin=""/ p' \ -e '/^Pin: / aPin-Priority: 1001' \ -e 'D' \ DEBIAN/control echo done | sudo tee -a /etc/apt/preferences

notetoself, linux, ubuntu, debian, tech

Previous post Next post
Up