When I first used Linux, I picked the Debian distribution. I came to appreciate its combination of reliability and flexibility. However, the delays between stable releases were always an irritation, and after about ten years I moved several of my machines over to Gentoo. The big advantage of Gentoo for me was that, because it was a source distribution, the newest application packages didn’t depend on the newest system packages. I could emerge, say, gnome-meeting (as it was then), without having to have the 30 exact library versions that someone else had compiled it against.
I fairly soon found that Gentoo was too high-maintenance for machines that I wasn’t using myself. The older hardware I had left on Debian because compiling Gentoo on them would have taken weeks. Ubuntu was picking up by then, and the more modern hardware in the house, other than my own desktop, I moved from Gentoo to Ubuntu.
I had thought Ubuntu would be just what I wanted – the solid engineering of Debian but with frequent releases and the bells and whistles. I found it nice and smooth, but when something did go wrong, which wasn’t particularly often, it turned very difficult to deal with. In particular xfce (which the rest of my family use) never quite worked right – on one release you couldn’t log out without the session hanging!
In frustration, I took the advice of a colleague and went back to Debian, this time risking “testing”, which at that time was Etch. I don’t think I had a single problem. Etch went stable a while ago, and I had no reason to chase more recent application versions, so the family’s machines are all Debian Etch.
Recently my wife got a new laptop. I’m always slightly afraid of laptops, so her old one had been left with a badly out-of-date Gentoo. I downloaded the stable Etch installer CD (other machines had been installed to either sarge or a testing snapshot of etch). I was hugely impressed by the installer. It worked so well, and the whole process was very quick. I think the Etch installer is better than any I’ve used for any distribution. The only manual intervention was the partition setup, where I wanted to leave part of the disk alone and set up the rest with LVM, which was very straightforward.
The laptop’s wireless was tricky, but it was a broadcom 4311 for which native linux drivers are very new. I grabbed the latest testing kernel and patches from the wireless-dev guys, and it works very well. The driver’s been overhauled in the last couple of weeks, but I’m not in a hurry to pick up the new (b43) one.
A couple of days ago I tried to bring my Gentoo desktop up to date. I ended up in such a mess of obsolete packages, packages conflicting with non-existent versions of themselves, and general chaos, that the cleanness and lack of hassle of the various debian machines really sunk in.
Last time I replaced the hard disk I’d carefully left smallish free partitions and one huge LVM PV, so running the Etch install took about half an hour in the evening then the same again in the morning, and now I’m running a clean, coherent system where everything works together, and the package system knows exactly what’s on it and where it all came from.
I still have to stick on a few non-free bits: the flash player and Sun java, and maybe realplayer, but I respect debian’s ignoring those. I’ve got a system that’s completely managed and completely free software, and if I need a couple of extras on top, I can take care of that myself.
So this is just a huge round of applause for the Debian crew, who’ve made the distribution just what it should be. Some credit must og to Ubuntu too — although the distribution didn’t work out for me, I suspect a lot of the smoothness and ease of setup that Debian used to lack has been supplied via their contributions.