I am switching to Debian on my desktop system, and I was wondering if anybody out there is working on bdist_debian? If not I would like to give it a try. I will still be running Mandrake on the other computers on my network, so I will still be able to work on bdist_rpm as well. -- Harry Henry Gebel, Senior Developer, Landon House SBS ICQ# 76308382 West Dover Hundred, Delaware
On 01 September 2000, Harry Henry Gebel said:
I am switching to Debian on my desktop system, and I was wondering if anybody out there is working on bdist_debian? If not I would like to give it a try. I will still be running Mandrake on the other computers on my network, so I will still be able to work on bdist_rpm as well.
I still have some messages in my inbox from a couple of the Python/Debian maintainers. Note there is a mailing list debian-python@lists.debian.org which would probably be a good source of wisdom; I thoroughly approve of (and encourage) cross-posting between debian-python and distutils-sig. What the hell, I'll go ahead and cross-post this one, so we can find out if any of the Debian Python maintainers have done anything more than make Debian packages of the Distutils. If nothing else, we might end up making their lives a lot easier. strongly-approve-of-debian-in-principle-but-was-thoroughly-mystified- by-dselect-the-one-time-i-tried-it... Greg -- Greg Ward - Unix nerd gward@python.net http://starship.python.net/~gward/ There are no stupid questions -- only stupid people.
On Sat, Sep 02, 2000 at 11:13:23AM -0400, Greg Ward wrote:
strongly-approve-of-debian-in-principle-but-was-thoroughly-mystified- by-dselect-the-one-time-i-tried-it...
Same here, but the packaging system is supposed to be alot more usable in 2.2; so I figured I would give it a try. -- Harry Henry Gebel, Senior Developer, Landon House SBS ICQ# 76308382 West Dover Hundred, Delaware
Debian Packages with Distutils: 1) You are on a Debian system a) execute "dh_make --native" or see dh_make(1) b) adjust your debian/rules file: debian/rules: #... build: #... rm -rf debian/tmp # Distutils chokes on broken symlinks python setup.py build #... clean: #... python setup.py clean --all #... install: build #... python setup.py install --root=`pwd`/debian/tmp #... 2) But I am running a non-Debian system a) Read something about the .deb format in deb(5): The file is an ar archive with a magic number of !<arch>. The first member is named debian-binary and contains a series of lines, separated by newlines. The second required member is named control.tar.gz. It is a gzipped tar archive containing the package control information. The third, last required member is named data.tar.gz . It contains the filesystem archive as a gzipped tar archive. b) Be sure that you follow all of the Debian standards and requirements so that the package fits smoothly in any Debian installation. Look at the documents in the debian-policy package. There are scripts to do this automatically: see debhelper(1). All this can be checked with the lintian Debian package. Number 2) has two disadvantages: 1. All this code to produce Debian packages is existing, tested and working code. bdist_debain would only duplicate this effort. Espacially for 2b) there are numerous existing helper scripts in a Debian system. 2. Okay, lets assume implementing this whole number 2) thingy is not very hard (or you have enough spare time to do it), but then you remember deep in your mind the Debian FAQ 6.2: This internal format is subject to change (between major releases of Debian GNU/Linux), therefore please always use dpkg-deb(8) for manipulating .deb files. So you will run into problems sooner or later and you have to update your software as the internal format changes. You can look at the discussions about bdist_rpm and the RPM versions, thats pretty much the same. Bastian Kleineidam
On 03 September 2000, Bastian Kleineidam said:
Debian Packages with Distutils:
1) You are on a Debian system
I think we can assume this most of the time. To build RPMs, you have to be a on a system with "rpm"; to build Windows installers with binary code, you have to be on a Windows system. The fact that you can build pure Python Windows installers under Linux is a happy accident.
2) But I am running a non-Debian system a) Read something about the .deb format in deb(5): The file is an ar archive with a magic number of !<arch>.
As soon as I saw the word "magic", I knew that trying to do it this way was Wrong Wrong Wrong.
This internal format is subject to change (between major releases of Debian GNU/Linux), therefore please always use dpkg-deb(8) for manipulating .deb files.
More confirmation. Bottom line: go ahead and assume the presence of Debian package-building tools for building Debian packages. Now, here's the interesting question: is it possible to install RPM on a Debian system, or the Debian tools on an RPM system, solely for use in producing the "other" type of package? Seems like it ought to be possible at least for RPM-under-Debian, since AFAIK creating RPMs doesn't affect or use the RPM database in /var/lib/rpm. Can anyone speak for creating Debian packages on an RPM system? Greg -- Greg Ward - geek-at-large gward@python.net http://starship.python.net/~gward/ "One world, one web, one program" --Microsoft "Eine volk, eine reich, eine führer" --Hitler
On Mon, 4 Sep 2000, Greg Ward wrote:
tools for building Debian packages.
Now, here's the interesting question: is it possible to install RPM on a Debian system, or the Debian tools on an RPM system, solely for use in producing the "other" type of package? Seems like it ought to be possible at least for RPM-under-Debian, since AFAIK creating RPMs doesn't affect or use the RPM database in /var/lib/rpm. Can anyone speak for creating Debian packages on an RPM system?
I'm sure about RPM-on-Debian. In fact, via a package called alien, it
is also possible to convert .rpm's to .deb's.
(That of course necessitates rpm since "nothing but rpm can parse RPM".
--
Moshe Zadka
participants (4)
-
Bastian Kleineidam
-
Greg Ward
-
Harry Henry Gebel
-
Moshe Zadka