debhelper is a collection of programs that can be used in a debian/rules file to automate common tasks related to building binary debian packages. Programs are included to install various files into your package, compress files, fix file permissions, integrate your package with the debian menu system, etc. This will be of use only to debian developers or others who wish to build debian packages.

Debhelper's git repository is now located at: git://git.debian.org/git/debhelper/debhelper.git

I posted a good overview of debhelper's history in my blog. Here is the thread that started it all.

Colin graphs debhelper statistics here.

News

version 9.20130518

debhelper 9.20130518 released with these changes

  • dh_installchangelogs: Write the changelog entry used for a binNMU, as flagged by binary-only=yes to a separate file, in order to work around infelicities in dpkg's multiarch support. Closes: #708218 (Thanks, Ansgar Burchardt)
  • dh_installinit: Add versioned dependency on sysv-rc when shipping upstart jobs. Closes: #708720
Posted
version 9.20130509

debhelper 9.20130509 released with these changes

  • dh_installinit: Remove obsolete systemd-tempfiles hack in postinst autoscript. Closes: #707159
  • dh_installinfo: Stop inserting dependencies for partial upgrades from lenny to squeeze. Closes: #707218
  • dh_compress, dh_perl: Avoid failing if the package build directory does not exist. (Audited all the rest.)
  • dh: As a workaround for anything not in debhelper that may rely on debhelper command that is now skipped creating the package build directory as a side effect, the directory is created when a command is skipped. This workaround is disabled in compat level 10. Closes: #707336
  • dh_auto_install: Create package build directory for those packages whose makefile falls over otherwise. Closes: #707336
Posted

Adding stuff

The tricky thing about maintaining debhelper is that everyone would like to see a program added to it to handle some special-purpose thing, and this is rarely a good idea, since it just serves to increase debhelper's command count, and thus its learning curve, while making me responsible for maintaining support for said obscure thing.

My first rule of thumb is that at least ten packages need to be obvious benefactors of a feature or command before it's added to debhelper. That's an easy bar; after that I have to do some thinking and made the hard call.

TODO: discuss wishlisted commands here