summaryrefslogtreecommitdiff
path: root/doc/TODO
blob: eb12909cd8f00aebff73765ad3ff5e6d2cd50eb9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
This is the TODO for debhelper. As more and more people use debhelper, this
list grows - I welcome patches to fix items on it!

Wishlist items:

* 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 breif usage summaries.

  I think this calls for a restucturing. 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.
  }

  sub fini {
  	# And final stuff here, if any.
  }

  This needs more thought.
  
* 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.
* 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.

Deprecated:

* DH_COMPAT 1. Can be removed once all packages are seen to be using 2 or
  higher. I won't hold my breath.
* 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 depercate/remove debian/compress files, -X is
  a better idea.
* dh_suidregister. Once nothing in the archive uses it.
* dh_installmanpages. Only mildly deprecated right now. Once dh_installman
  catches on, make it emit a warning, and then wait for it to go away.
* dh_testversion. Only mildly deprecated right now. Make it emit a warning
  by jan 2002, and remove as soon as nothing uses it.