First Time Linux

Debian Squeeze

The Shuttle desktop has now been running Debian Lenny for some time now, and despite a few problems and quirks, it's been very reliable and solid. Now the next version of Debian, called Squeeze, has just reached mythical "stable" status, and so to get all the benefits and updates from the new system, I figured it's about time to upgrade. Some other distros have two releases each year and it isn't always worth updating, but when Debian brings out a release, you know it's solid and thoroughly tested.

After trying out the Squeeze live image and seeing how well it all works (despite the spacepyjamas), the next thing to decide is whether to do an upgrade, or a fresh install. And if a fresh install, then should it be from the already downloaded live image (which does now include an installer), or using a new "netinst" live image as the Lenny install was done?

I'd already tried the netinst method, which worked very well, but for the upgrade I thought I might as well take advantage of Debian's renowned power and upgrade directly. It's taking the netinst idea even further, downloading only exactly what you need and not having to bother with burning CDs or copying USB stick images.

Doing the upgrade

The first thing to do is thoroughly read the Squeeze release notes, especially the parts concerning possible upgrade problems. Yes there is a lot to read and it makes you wonder whether a fresh install would actually be easier.

Following those instructions, it's a step-by-step process with lots of command-line action. If you're not comfortable with running apt-get and other CLI commands then this isn't for you. The recommendation is to do the upgrade all from the command line as it's safer if X and Gnome and all the other stuff isn't running during the upgrade. So that means rebooting into single-user mode and running CLI commands as root.

The basic steps can be roughly summarized as follows:

One thing to be careful of is the free space left in the / partition, you might find (as I did) that with the huge number of packages to be downloaded and unpacked, the root partition runs out of room and the upgrade fails. The release notes suggest several ways to remedy this, including removing large packages before upgrading, performing partial upgrades and cleans before doing the dist-upgrade, and even bind-mounting to another partition for temporary space. It's worth double-checking what the dist-upgrades estimates before going ahead.


screenshot of Debian squeeze desktop screenshot of Debian squeeze desktop

The screenshot on the left shows the bare desktop using the default "spacepyjamas" wallpaper as we've already seen from the live image. You could say it's smart, but clearly it's not going to be to everyone's tastes. This same theme affects the login screen too.

The second screenshot here shows squeeze again but using the new wallpaper I made (using povray to render the Debian logo in pastels). Anyone interested in this wallpaper can get it from the downloads page. Also you can see a modified icon theme and a transparent tilda window.


One thing to note during the install, is that gnome now installs a note-taking application called "tomboy", and this requires the mono runtime and other mono stuff. If you don't want mono on your system, now's a good time to remove it. If you remove tomboy you can either install "gnote" instead, or if you don't want either then you have to remove the metapackage "gnome", which specifies either one or the other. This may require some care to avoid removing the whole of gnome by accident, but all the "cil" packages can safely go.

First impressions are good, the default wallpaper is obviously easily changed and because this upgraded system is still running gdm for the login screen, you can still select a theme using gdm-themes (the live image used gdm3 instead, which is more of a pain to customize). There's still the grub bootchaining to fix but that is easily done by issuing the command "upgrade-from-grub-legacy" as root.

I haven't had chance to test all the quirks yet but one thing is striking - an inserted USB stick is no longer to be found at /media/disk/ but rather some alphanumeric identifier. Not a problem for a GUI but very confusing from the command line. Plus, on the camera card the filenames are all suddenly in upper case, whereas in Lenny they were all lower case. So hopefully that change won't cause archiving problems later on.

I also had to re-blacklist the garmin_gps module for GPS access, because during installation I chose to accept the new blacklist file. Then again the GPS access through gpsbabel failed, another annoying glitch. As the root user it worked but as a regular user I just got the error "Claim interfaced failed: could not claim interface 0: Operation not permitted". This one again turned out to be a udev problem, apparently under Squeeze the udev rules have to be in uppercase, so the udev rule given at gpsbabel's page has to end with "GROUP="plugdev"" and not "group="plugdev"" which worked with Lenny. Really Debian should have a package available called garminhack or something to automatically fix this problem for everyone.