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.
News
debhelper 7.1.1 released with these changes
- dh_install(1): Order options alphabetically. Closes:# 503896
- Fix some docs that refered to --srcdir rather than --sourcedir. Closes: #504742
- Add Vcs-Browser field. Closes: #507804
- Ignore unknown options in DH_OPTIONS. Debhelper will always ignore such options, even when unknown command-line options are converted back to an error. This allows (ab)using DH_OPTIONS to pass command-specific options. (Note that getopt will warn about such unknown options. Eliminating this warning without reimplementing much of Getopt::Long wasn't practical.)
debhelper 7.1.0 released with these changes
- dh_installchangelogs: Fall back to looking for changelog files ending with ".txt". Closes: #498460
- dh_gencontrol: Ensure misc:Depends is set in substvars to avoid dpkg complaining about it when it's empty. Closes: #498666
- dh: Fix typo in example. Closes: #500836
- Allow individual debhelper programs to define their own special options by passing a hash to init(), which is later passed on the Getopt::Long. Closes: #370823
- Move many command-specific options to only be accepted by the command that uses them. Affected options are: -x, -r, -R, -l, -L, -m, --include-conffiles, --no-restart-on-upgrade, --no-start, --restart-after-upgrade, --init-script, --filename, --flavor, --autodest, --libpackage, --add-udeb, --dpkg-shlibdeps-params, --dpkg-gencontrol-params, --update-rcd-params, --major, --remove-d, --dirs-only, --keep-debug, --version-info, --list-missing, --fail-missing, --language, --until, --after, --before, --remaining, --with
- If any third-party debhelper commands use any of the above options, they will be broken, and need to be changed to pass options to init().
- To avoid breaking rules files that pass options to commands that do not use them, debhelper will now only warn if it encounters an unknown option. This will be converted back to an error later.
debhelper 7.0.17 released with these changes
- [ Per Olofsson ]
- dh_auto_install: Fix man page, was referring to dh_auto_clean.
- [ Joey Hess ]
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