This week I was busy rebuilding my Linux desktop. That's right -- I am a member of that supposedly rare species, the Linux desktop user. In three years, I've never had to do anything as rash as a complete system backup, wipe, and reinstall -- a yearly or semi-yearly necessity in my Windows days. But that's what it had come to.
Or so I thought.
My work-issue ThinkPad originally came with Windows 98, but right away I added the Debian Slink release with a custom 2.0.something kernel. Since then, I've installed and uninstalled hundreds of different Linux applications and dozens of kernels. Some I built from source code, some I installed from *.deb packages, some from *.rpms using alien. Most, I simply installed by typing 'apt-get install foo' and waiting a few seconds for the new software to arrive.
Three times, when new Debian distributions were released, I upgraded hundreds of packages at once by editing my /etc/apt/sources.list and typing apt-get update; apt-get dist-upgrade. These updates took maybe half an hour each, and were real cliff-hangers... it doesn't really seem possible for automated system administration tools to handle a whole release upgrade, so it's always pretty astonishing when you come out the other side with a brand new system.
About once a week, I typed apt-get update; apt-get upgrade to be sure I had all the latest security patches and the latest versions of all my favorite programs. Sometimes these routine updates would rotate 40 or 80MB of code.
It has been inspiring to watch my Linux desktop improve. I enjoy sitting back with a cup of coffee watching my system update itself, occasionally asking me a question when it comes to a fork in the road or writes a config file with a new option.
Despite this constant system activity and "unstable" versions of everything, my system hummed along perfectly with nary a reboot.
Until now.
Mind you, the system continued to function perfectly. We aren't talking about the kind of performance degradation you see on other platforms where, after a number of updates, software features break and stability declines.
It's just that the system administration tools had spotted a problem in the guile libraries, and they wouldn't let me muddle things further until the problem had been resolved. I think GNUCash, the "quick and intuitive" Linux money manager, may have been involved. I still don't know exactly what the trouble was. Everything worked, but I had a kind of catch-22 where I couldn't install X until I'd removed Y, but I couldn't remove Y until I'd installed X. In fact, I couldn't install or uninstall anything.
So, with an eye toward fresh starts and new frontiers -- and a fervor to try out Evolution, the "Outlook killer" from Ximian -- I backed up ~, /etc, and /root and repartitioned.
Two days later, a coworker who uses Debian told me that the guile library problem had been fixed on the Debian side. If I'd only been a little more patient, I could have avoided the whole reinstallation experience, and I would now be tinkering with Evolution instead of writing this column.
Chalk it up to a learning experience. Reinstalling is the coward's way out, akin to a reboot -- a drastic and almost always uncalled-for action. So I suppose I got what I deserved. I also got a reminder that while Debian is probably the easiest distribution to maintain, well... it is no joy to install, (at least if you want the latest versions of everything.)













