[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Differences of Debian vs. the Other Guys



On 02-Jun-1998, Javier Fernandez-Sanguino Pen~a <jfs@ieeesb.etsit.upm.es> wrote:
> 
> 	I'm currently writting an article for "Linux Actual" (an spanish
> magazine on Linux) about the Debian Packaging System (more on the .deb
> format than other policies) and I would like to make the BIG question,
> considering there is a lot of discussion about LSB.
> 
> ---- start big question  ---
> 
> 	What are the main differences/advantages/disadvantages of
> Debian's Packaging System vs The Other Guys (tm) ? 
> 
> --- end big question ---
> 

Manoj addressed most of the big differences in his mail.  One that he
missed (or glossed over) is the difference in generation of packages.

dpkg encourages (practically enforces) building a package in a working
directory, installing files to a temporary directory, and packaging
from that directory.
	e.g.	configure --prefix ./debian/tmp
		make
		make install
		package up ./debian/tmp
is what the debian/rules file says.

rpm encourages (practically enforces) building a package, installing
it in /usr, then listing all the files that were just installed.
	e.g.	configure --prefix /usr
		make 
		make install
		package up all listed files

This is very error prone.  Three big problems can occur:

	1. Maintainer lists files that were on their system, but were
	not generated by the source archive.  This means that the source
	RPM cannot generate the binary RPM on anyone elses system
	(except perhaps if they install the binary first, then create
	the package -- but it's a risk, and might eventually lead to
	packages that cannot be effectively maintained). 

	2. Maintainer fails to list files that were installed.  Package
	works fine for them, because they installed the files using
	"make install", so all files are present.  Package doesn't work
	for anyone else.

	3. Package maintainers machines get full of junk files, because
	they are only *producing* packages for people, their own system
	is used to install packages. 

When I discovered this is how rpm works, I was very disappointed.  
dpkg has "gone the extra mile", and done things properly, despite being
a bit more difficult to implement.  dpkg makes packaging quicker,
cleaner, and less error-prone.

Add to this the lovely cvs-buildpackage (automatically builds packages
out of CVS archives), and dpkg is a formidable packaging system.

.deb vs .rpm isn't much competition -- they are both functionally
equivalent at this level (so are .tar.gz or a .zip files really).
But when you look at the tools and process used to create a .deb versus
a .rpm, I think RPM needs some work.  But chances are there are things
I don't know about RPM -- I looked at it a while ago.

Good luck on your article.

-- 
       Tyson Dowd           # So I asked Sarah: what's the serial number on
                            # your computer? She replied:
     trd@cs.mu.oz.au        #          A-C-2-4-0-V-/-5-0-H-Z
http://www.cs.mu.oz.au/~trd #


--
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org


Reply to: