-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, On Mon, Jan 17, 2005 at 03:18:59PM -0800, Jeff Dairiki wrote:
On the other hand, I haven't really heard a lot of feedback on it from, e.g., higher ups in the debian-python world, so you may or may not want to take my opinion with a grain of salt. I reviewed the patch by testing it on the LinkChecker package (http://sf.net/projects/linkchecker).
- - The remove_tree method in bdist_deb is also available in dir_utils.py. I think it can be replaced with from distutils.dir_utils import remove_tree - - The bdist_deb.in_directory() utility function should probably be moved to spawn.py so that other commands can use it too. - - There is not a way to supply additional debuild options. My current debuild options are used for signing the package (-pgpg -sgpg -k$(GPGKEY)), and running automated package checks linda and lintian (--linda --lintian-opts -i --linda-opts -i). It might not be a bad idea to supply a generic --debuild-opts and --dpkg-buildpackage-opts since I think most developers use different options for debuild. - - The dh_make command puts (in my case) the complete GPL text in debian/copyright. To reduce disk usage the preferred way is to mention only the name and refer to the complete text in /usr/share/common-licenses, ie. License: GPL , see /usr/share/common-licenses/GPL for more info. Currently available entries in common-licenses directory: - -rw-r--r-- 1 root 6111 Dec 16 1996 Artistic - -rw-r--r-- 1 root 1499 Aug 26 1999 BSD lrwxrwxrwx 1 root 5 Dec 17 14:04 GPL -> GPL-2 - -rw-r--r-- 1 root 17992 Sep 16 1999 GPL-2 lrwxrwxrwx 1 root 8 Dec 17 14:04 LGPL -> LGPL-2.1 - -rw-r--r-- 1 root 25284 Feb 2 2000 LGPL-2 - -rw-r--r-- 1 root 26528 Jul 21 2003 LGPL-2.1 - - The generated debian/rules executes dh_python. This needs a build dependency on python which is currently not there. - - When running debuild standalone (after python setup.py dh_make), generating the PKG-INFO file fails in the case when setup.py imports additional modules at the top. Here is the error I get: $ debuild binary generating debian/PKG-INFO Traceback (most recent call last): File "<string>", line 1, in ? File "/usr/local/lib/python2.5/distutils/core.py", line 218, in run_setup execfile(script_name, g, l) File "setup.py", line 292, in ? include_dirs = include_dirs + \ File "setup.py", line 53, in normpath return os.path.normpath(path) NameError: global name 'os' is not defined make: *** [debian/PKG-INFO] Fehler 1 The 'os' module is imported in setup.py at the top. - - After running python setup.py dh_make there should be a note reminding the packager that he has to review and edit the generated files in the debian/ subdirectory. - - Manpage stubs debian/*.1 for the scripts should only be generated when such a file is not already installed. For example the setup.py from LinkChecker already installs manpages when running on POSIX platforms: [...] data_files.append(('share/man/man1', ['doc/en/linkchecker.1'])) data_files.append(('share/man/de/man1', ['doc/de/linkchecker.1'])) data_files.append(('share/man/fr/man1', ['doc/fr/linkchecker.1'])) [...] - - Both commands dh_make and bdist_deb should probably not be run on non-POSIX platforms. This should be documented. If you run it on eg. a Windows platform, an appropriate error message should be printed, something like this: if os.name != 'posix': print "This command is only available on POSIX systems" print "Your current system is %s (%s)." % (os.name, sys.platform) sys.exit(1) - - dh_make should also support generating packages relying on the "default" Python version (according to section 3.1 of the Debian Python Policy). This means there is a single package name (without the "python-" prefix) depending on python (>= 2.3), python (<< 2.4). Well, that's it for now :) Regards, Bastian - -- ,''`. Bastian Kleineidam : :' : GnuPG Schlssel `. `' gpg --keyserver wwwkeys.pgp.net --recv-keys 32EC6F3E `- -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) iD8DBQFB7Pl/eBwlBDLsbz4RAhFZAKCLbxrNrjFGqdC5Ad+vB/7vB0V0QACfff+G Bd/dWB8RPrmpSURUAEktLCk= =Ae8k -----END PGP SIGNATURE-----