I run pretty much pure debian linux—on my desktop, on my home server, on my laptop, and since last week on my internet server. Every linux distribution must address the issue of how to package and distribute programs, and there seem to be basically three solutions: debian packages, Red Hat packages, and Other. So every linux distribution can be put into one of these categories. It’s probably not the overall best way to sort out distributions, but on the other hand maybe it is, and here’s why:
“Amateurs talk about tactics, but professionals study logistics.” (The quickest citation is Gen. Robert H. Barrow, USMC (Commandant of the Marine Corps) noted in 1980, but the axiom is probably much older.) Similarly, users think about features, but professionals study upgrades. Many program and most operating system upgrades suck, but those on debian usually suck less. Distributions may add polish, testing, configuration, and so forth over and above the basics, but upgrades are constrained by the architecture. Any upgrade system includes both the technology itself, and the quality of the process and people maintaining the repository of programs. Debian’s repository and team are both huge and both very well polished. (To digress, Debian-based distributions you may have heard of include Linspire, Knoppix, Ubuntu, and Xandros. Red Hat, of course, uses Red Hat rpms, and SuSE also uses rpms, I believe. The Other category includes those built from source, with gentoo being the one I’ve heard most of, and stuff like Slackware which I know has a cadre of adherents but I’ve never encountered it.) (To further digress, some other famous repositories that I’ve heard of include CPAN, for perl, with which I’ve had mostly bad experiences; Windows Update; and bsd ports, which is superb.)
One limitation of Debian’s repository, or strength if you drink the koolaid, is that it has very strict licensing requirements, and only limited means to work around them. I’m currently deviating from the pure path on my desktop machine in three ways: I run a proprietary binary kernel module from NVidia to get proper performance from my video card (not for games, but to run my wide screen and let me switch workspaces quickly; I use qmail for email, more because of my invested time in understanding its quirks then because it is still the best, and djb’s restrictive source license means that installing qmail requires jumping a few extra hoops for no discernable valid reason (the key trick, sadly, I have forgotten to document three times in a row now, but it involves extra flags forcing the qmail.deb installation without de-installing exim and its dependents); and java, for which these instructions are as a rosetta stone. My point, though, is the site which the title of this posting links to is such a sublime way to present large quantities of data that it’s worth installing java to see and feel it.