dpkg changes and queries - the answers to your questions
I've just read debian-devel, and:
0. Yes, all existing packages should now be converted to the new
source format, and new packages should be in this format too.
1. Yes, dpkg-source doesn't work with hardlinks. I think that
hardlinks in source packages are evil. Perhaps they can be made to
work - Heiko's patch seems reasonable (until someone wants a filename
containing the string ` link to '). However, I'd recommend just
removing the hardlink and replacing it with a symlink (or just
deleting one name). There is no problem with doing that, and it is
fine wrt our policy about original sources.
2. I don't know what to do about tar doing nasty things to filenames.
If this is a design feature of all tars then dpkg-source should be
changed to unmangle the filename on output from tar.
3. Do NOT use Michael Meskes's patch to quote the argument to
$rootcommand in dpkg-buildpackage. Instead, RTFM. Please DO NOT
release a dpkg with Michael Meskes's patch. Thank you.
4. dpkg-name belongs in the dpkg-dev package. If anyone is releasing
a new dpkg they should move it. See debian/rules.
5. I don't understand the problem with WIFSIGNALED, but this is
definitely a bug in the Perl installation and not in dpkg-source.
6. Karl Sackett's fix for an error message typo (Bug 4524) is good.
Heiko, please close the report if you like but definitely mail me the
7. Ives Arrouye asked about `Source: php' / `Package: php-module'.
This will work but you have to give dpkg-gencontrol the -p option.
There should be no need to have one of the binary packages named the
same as the source.
8. Regarding dpkg-shlibdeps: every shared library package should
provide a `shlibs' file for the libraries it contains. This is put in
the DEBIAN directory when the package is built, and will end up in
/var/lib/dpkg/info/<pkg>.shlibs when it is installed. dpkg-shlibdeps
looks there (but earlier versions had a bug). The
/etc/dpkg/shlibs.local file is only there to sort things out with the
most basic packages before they have shlibs files in the shared
Documentation for this is available.
If you find that your package needs a shared library package which
doesn't have the dpkg-shlibdeps support why not convert it now ? See
the section on other-than-usual-maintainer releases in the policy
9. On permissions of maintainer scripts - this has affected libpng at
least: dpkg-source honours the extracter's umask, unlike tar. The
debian/rules file should explicitly set the permissions and not rely
on (say) cp to copy them correctly.
10. Re dpkg-buildpackage and the failure to build due to permissions
(bug 4525). I'm inclined to say "don't build with a umask of 077
then". I don't think that all packages' debian/rules should be
responsible for fixing the permissions of the created files.
11. Christian Schwartz posted a Perl script that (I presume) produces
much the same output as
sed -e 's/ +/ /' | sort +2
does on the Maintainers file in the indices subdirectory of the ftp
12. llucius posts a patch to dpkg-buildpackage to make it pass -v, -m
and -C to dpkg-genchanges. His patch is not in line with my intent,
and won't work when the arguments have spaces. The call to
dpkg-genchanges needs to read
withecho dpkg-genchanges $sourcestyle "$@" >"$chg"
instead of the thing in his patch. (Bug #4554.)
I hope this is enough to keep you going for another week :-).