Wishlist items:
-* Move the perl libs into the correct perl lib dirs. Makes all debehelper
- scripts shorter..
-* Make dh_* "use strict".
-* Make dh_movefiles remove emptied directories after it's moved all the
- files out of them (#17111).
-* enhance dh_installmanpages so it associates binaries and man pages and
- installs the man pages into the correct areas to suit the binaries they
- document. I may need to make this only happen when a switch is given, to
- preserve backward compatibility. (#16933, #17061)
-* maybe make dh_installmanpages look at the .TH line of man pages whose
- filenames end in .man, to figure out what section they go it. This would
- require a switch to turn on, for backwards compatibility.
-* All debhelper programs should be checked that they output files with the
- correct permissions no matter what the umask is set to. Currently, only
- those programs that run after dh_fixperms have been so checked. (Checking
- the rest is low priority, since dh_fixperms fixes any incorrect permissions
- they might have; still it would be nice to check them too, just to make
- debhelper more flexible.) One easy fix is to add umask 022 to dh_lib,
- however, there may be unforeseen ramifications of such a change.
-* All programs should also make sure the files they install are owned by
- root.root. Situation is currently the same as with permissions above, plus
- dh_installchangelogs is fixed.
-* something should add ldconfig calls properly to the postinst of packages
- that contain shared libraries. maybe dh_makeshlibs? But it wasn't designed
- to do that originally, and even worse, it is often run after
- dh_installdeb, so the fragments wouldn't go into the postinst. So maybe a
- new script is called for. But it's probably be best to just have a switch
- to enable this.
-* Need a way to make dh_strip not strip any static libs. Also, it'd be nice
- if there were options to dh_strip, dh_compress, etc, to allow inclusion of
- directories and exclusion of files based on filename globbing. (Request from
- Matthias Klose <doko@cs.tu-berlin.de>)
-* Support use of environment variables in data taken from user, ie, in
- debian/dirs. The problem with doing this is that we really want to allow
- any filenames in that input, even those that look like environment
- variables. However, it may be worth adding a switch to make it parse
- environment variables. (#20964)
-* It's possible to speed up debhelper by having it cache some values that
- multiple commands call. One way to do this would be to write dh_cache,
- that generates the cache. The catch is that if the user runs that program,
- they are stating that they don't do anything later to invalidate the cache,
- without calling ch_cache again. (#23792)
-* Add a switch to dh_installdeb to allow it to do user defined
- substitutions. OTOH, maybe it's better if people just sed
- postinst.in before debhelper gets it's hands on it... (#25235)
-* objdump -p can get the soname of a library, try using that in dh_shlibs
- instead of parsing filenames.
-* to suport foo-doc -> foo symlinks in /usr/share/doc, make
- dh_installdocs/changelogs check to see if the doc dir is a symlink to a
- directory. If so, dh_installdocs does not install copyright, and
- dh_installchangelogs does nothing, but everything else dh_installdocs would
- do is still done. This means that you need to use dh_link and dh_installdirs
- to set up the link and directory.
+* All debhelper programs should only accept the options they are documented
+ to accept (rather than accepting all debhelper options). They should
+ be able to print brief usage summaries.
-Deprecated:
+ I think this calls for a restructuring. Make a Debhelper.pm class. Each
+ program subclasses the class. The class provides command line parsing,
+ useful functions, and so on. Skeleton of a debhelper command would then
+ be:
+
+ use base qw{Debhelper};
+
+ sub startup {
+ # Add initialization stuff here.
+ }
+
+ sub perpackage {
+ my $package=shift;
+
+ # Stuff to do for each package here.
+ }
-* remove dh_du.
- - need to wait a reasonable length of
- time. I'm currently planning on doing this after slink is released or
- one year after they were deprecated, whichever comes first. Be sure to
- grep whole debian archive for all of them before removing them, though!
- - currently, a few packages in potato use dh_du, but bugs have been filed.
-* Remove support for --number option
- - only dh_installemacsen ever used it, it is not --priority.
+ sub fini {
+ # And final stuff here, if any.
+ }
+
+ This needs more thought.
+
+v8:
+
+* escaping in config files (for whitespace)?
+* make dh_install use hard links for efficiency
+* dh_installinit --restart-after-upgrade as default?
+* #487006: dh_installman with 3-letter codes
+
+Deprecated:
+* DH_COMPAT 1, 2, 3. Can be removed once all packages are seen to be using
+ a newer version. I won't hold my breath. Now with evil warning messages
+ though.
+* Also, grep the entire archive for all dh_* command lines,
+ and check to see what other switches are not being used, and maybe remove
+ some of them. I'd also like to deprecate/remove debian/compress files, -X is
+ a better idea.
+* dh_suidregister. Once nothing in the archive uses it.
+* dh_installmanpages.
+* dh_testversion. Remove as soon as nothing uses it.
+* dh_movefiles. I won't hold my breath.
+* debconf-mergetemplates support and the debian/template.ll files and the
+ debconf-utils dependency.
+* dh_undocumented
+* dh_installinit --init-script
+* dh_python
+* dh_clean -k (make it warn)