Debian 6.0 ‘Squeeze’: What’s New?

14
12466
Debian time...

Debian time...

With its extremely long release cycle (this one took two years), Debian 6.0 Squeeze was rolled out on February 6th, amidst jokes like, “See you in 12 months’ time,” and “So they finally ‘squeezed’ it out the door, eh?” Though its release has been accompanied by less fanfare and buzz than that of Lenny (the previous release), Debian 6 does come with gigatons of new features. Let’s have a look at them, in this review of Debian 6.0.

For the uninitiated, Debian is the world’s second-oldest surviving GNU/Linux distribution, released only a few months after Slackware’s first release. It’s also got a bit of romance attached to it — the name Debian derives from the names of Debian’s founder, Ian Murdock and his then-girlfriend (later wife, and now ex-wife), Debra Lynn.

Debian is one of the two major “parent” distributions today (the other being Fedora), which means that most other distributions are built on top of either Debian or Fedora. Debian’s claims to fame include its revolutionary package-management system consisting of DEB packages, Aptitude and Synaptic; its unmatched stability and speed; and the fact that it’s the parent to the world’s top two Linux distributions (by popularity): Ubuntu and Linux Mint.

Major changes

Debian 6.0 took 24 months to cook. With all that time on the burner, there had to be some major changes. So what are they? Well, for starters, Debian 6 is the first Debian release to feature the KDE Plasma Desktop, as the Debian guys choose to call KDE4. The Debian 6 software package versions almost mirror Ubuntu’s 10.04 LTS release, with KDE 4.4.5, GNOME 2.30, Kernel 2.6.32 and OpenOffice.org 3.2.1 making it to the release.

Debian 6.0 now officially supports Sun’s (now Oracle’s) ZFS filesystem. Yes, you read that right —  ZFS, including booting from it. How? Well, Debian, apart from now using the Linux kernel, also uses the FreeBSD kernel. There are two “technology preview” architectures called kfreebsd-i386 and kfreebsd-amd64, which feature the FreeBSD kernel running underneath Debian’s standard GNU userland. This affords users the best of both worlds, but a couple of kinks do remain, and some advanced functions in the desktop environments don’t exactly work well. This also means that it’s the first time ever that a Debian distro has been rolled out with major bugs still unresolved.

Debian 6 makes two more major system changes, and both concern the internal design on the OS. Debian has switched to the free Linux kernel, which means all non-free firmware is now missing from the distribution, severely crippling hardware support. However, all the non-free firmware is still available; it’s just been moved to the non-free repository.

This segregation offers the best of both worlds: purists can now run a completely free Linux system, and those who need the non-free firmware (which is most people) can just enable the non-free repo, and install the firmware. Debian has also switched to a new dependency-based init system (Ubuntu uses an event-based init system), which enables faster boots, with a more structured service startup pattern.

The artwork team has also done wonders with this release. The new scheme, called SpaceFun (see Figure 1), is based on a cartoonish representation of a rocket leaving Earth and heading towards Saturn. This comprehensive user experience even includes a Plymouth theme. Yes, Debian now supports KMS and Plymouth too, but the latter isn’t installed by default.

Default desktop
Figure 1: Default desktop

On the Mozilla front, all is definitely not well, however. Apparently, Mozilla didn’t allow Debian to muck around with their branding and logos for newer versions of Firefox. Thus, Debian actually has to make do with Firefox 3.5 and Thunderbird 3.0. Not an issue for me, since I use neither — I use Google Chrome, and yes, Chromium is now an official Debian package. And on that note, Debian now includes Ubuntu’s Software Center (version 2, which is in 10.04 Lucid Lynx LTS, and not version 3, which is in 10.10 Maverick Meerkat), which makes software installation that much easier (see Figure 2).
Software Center in Debian
Figure 2: Software Center in Debian

Finally, Debian 6 marks the first-ever release of Debian with EGlibC instead of GLibC. There’s a genuine reason for this replacement — apparently, GLibC’s developer is not too friendly (to put it mildly), and there have been lots of developmental issues with it. EGlibC isn’t a fork of GLibC, it’s more like an unofficial branch with a lot of patches. It is binary-compatible with GLibC, and in any case, Ubuntu’s been using it since Jaunty.

Well, that’s about all I’m willing to give you as an introduction. It’s time to get our hands dirty and actually try out Debian 6, to see if it’s worth its salt.

Installing Debian 6

Because of Debian’s new “feature” of excluding non-free firmware from the installation media, installation gets interesting. You have a couple of options:

  • If your machine does not include any hardware that demands non-free firmware, go ahead and download one of the many DVD, CD, Blu-Ray or USB images of the Debian-Installer Disk Set, and give it a spin.
  • If your machine requires a piece of non-free firmware, you have two options. You can use an official CD and place a firmware tarball on a USB drive, which you can use as an “F6 Disk” (somewhat like when you’re installing Windows XP) to supply the firmware to the installer. Alternatively, you can download a specifically crafted NetInstall CD, which includes non-free firmware.

I decided to give it a spin in a VMWare virtual machine, and so downloaded a 47 MB BizCard CD image, which would fetch all the packages dynamically off the Internet (in contrast to NetInstall, which includes the base system packages on the CD). To obtain installer images, use the following links:

If you do use the official CDs with the firmware tarball, use a USB drive with a single partition either formatted with FAT32 or ext3, and place the firmware tarball in the root of the drive. Keep it attached while installing, and Debian-Installer (see Figure 3) will automatically detect the tarball and use it.

The Debian installer
Figure 3: The Debian installer

Back to my story. I fired up the VM, booting from the BizCard CD. Once at the boot menu, I opted for the Graphical Install. Remarkably, I was staring at the first X-based screen no more than 3 seconds later.

Debian is known for its extremely long installation procedure (something to the tune of 23-26 steps, depending on the installation method). While it’s pretty long, it’s not at all complex. In fact, it’s very simple and self-explanatory, and anyone even vaguely familiar with Linux should be able to install the system. I will, therefore, spare you an installation how-to, and speak more about the installer itself.

The first thing that will strike you when the installer boots is the artwork. SpaceFun now flaunts itself from the installer itself. I selected British English language, US key-map and Indian locale settings, which automatically showed me only Indian mirrors in the mirror selection screen. I opted to use IIT Kharagpur’s mirror since it’s the closest to me, but IIT Madras’ mirror should be faster. The third and last option is Debian’s CDN, which fetches from many load-balanced servers simultaneously. I didn’t use it, since there’s a possibility of package conflicts between different mirrors.

I’d given the VM a 20 GB dedicated SCSI hard drive, so I let Debian do automatic partitioning. I was surprised to note that Debian still uses the ext3 filesystem. I’d recommend using ext4 — the performance gains are significant. And ext4 is well supported in kernel 2.6.32; no data-loss bugs to be scared about.

The installation took about five hours at my end, out of which all but 15 minutes was spent downloading packages over a 512 KBps Internet connection. And then… kaboom! Apparently, the Internet connection had packed up for a couple of seconds, preventing a couple of packages from downloading. Rather than retrying the download, Debian-Installer silently failed, leading to a botched installation.

I redownloaded CD 1 of the 52-CD set and reran the install using that, but the installer still took three hours to download updated packages, this time from IIT Madras’ mirror.

The desktop

Apart from the pretty staple GNOME 2.30 desktop with OpenOffice.org 3.2.1 (see Figure 4), nothing much is quite worth mentioning, since everything is so stock and commonplace. Debian still refuses to enable LCD sub-pixel rendering patches, even though the FreeType patent expired aeons ago. Otherwise, the system is pretty responsive.

OpenOffice 3.2.1
Figure 4: OpenOffice 3.2.1

Something that frustrates me is the lack of up-to-date Web browsers. Chromium is at version 6, Firefox (no, their IceWeasel crap) is at version 3.5.12 (because of feuds with Mozilla, apparently), and IceDove (Thunderbird) is at 3.0.11 (3.1.7 is available in experimental mode, as of this writing). I had to download Google Chrome directly from its website to get an up-to-date tool to browse the Web. This is unacceptable in the world of GNU/Linux. You should not need to manually download a Web browser — c’mon, who does that?

I wasn’t able to test out Compiz because: a) it isn’t installed by default, and I’m a very lazy person; and b) I had trouble getting 3D acceleration in VMWare Linux guests to work. This is a driver issue solved by the new KMS-capable vmwgfx driver — which, again, isn’t included in Debian Squeeze, because it’s too darned new! However, I did enable Metacity’s compositing, and the drop-shadows were pleasing to the eye. I also went ahead and installed Docky, to test if translucency was working with Metacity compositing — it was (see Figure 5).

Docky in Debian, showing off Metacity compositing
Figure 5: Docky in Debian, showing off Metacity compositing

One bizarre bug I faced concerns enabling sub-pixel rendering. I right-clicked the desktop, went into Change Desktop Background, switched to the Fonts tab, and selected the Sub-pixel Rendering radio button. At once the font size jumped to something like 20 pixels, but strangely, the font selectors all showed 10 pixels. I manually changed all font sizes to 6, and got 9-pixel fonts. I was pretty baffled by this behaviour.

Now Debian is light enough to work very well on older hardware, but it does include LXDE and XFCE for people who’d like them. Something worth mentioning is that LXDE is at version 0.5.0, which, although admittedly 13 months old, is still the latest available! XFCE is at version 4.6.2 (4.8 was released a couple of weeks ago).

I did have some trouble adjusting to Debian, having been used to Ubuntu for such a long time. For starters, Debian does not include support for indicators, and its reliance on Aptitude-based tasks for installing bulk packages at once, instead of Ubuntu’s meta-package approach, left me floundering for a while.

For example, Ubuntu’s desktop meta-package is called ubuntu-desktop, and I can install it with a simple apt-get install ubuntu-desktop. Debian has no such meta-package, and requires the installation of two “tasks”, desktop and gnome-desktop. Note that these are tasks, and apt-get will fail to install these with “No Package Found” errors. You’ll have to use Aptitude for these.

It’s not a bug; it’s actually a more elegant solution, since removing the task will remove all packages too, unlike removing the meta-package, where all the actual packages remain, making no difference to the installation. Still, it does take a bit of getting used to.

On the upside, the sheer amount of software that Debian’s default repositories hold never ceases to amaze. Even though NetworkManager is installed by default, Wicd is available, as is the Linux Container system LXC, and the cluster framework Corosync. In fact, between Lenny and Squeeze, 10,000 additional packages have been added. Even Docky is available in the default repos!

Talking about repos, note that the repositories for the next release of Debian (7.0 Wheezy) have already been defined. However, don’t get too excited — even though it’s installable and fully functional, the actual release is another two years away.

And last, but not the least: Remmina replaces Vinagre and RDesktop, giving you one unified remote-desktop client. Remmina currently supports VNC, RDP, XDMCP, NX and SSH connections, so that’s a huge improvement over Vinagre. The default desktop also includes some sort of a time management tool, which is something I didn’t bother trying out.

The server end

Debian 6.0 is a perfectly capable server system. In fact, it was meant to be a server system right from the start. The server end is also where the kfreebsd variants make themselves useful. Since without the desktop environments, the sources of bugs are done away with, the FreeBSD kernel should actually be a better choice for servers than Linux.

So can Debian 6.0 run Drupal 7? I’m using Drupal 7 as a benchmark because it’s just been released, and the requirements are pretty high for servers, especially since MySQL versions earlier than 5.0.15 aren’t supported. Well, Apache 2.2.16 and MySQL 5.1.49, with PHP 5.3.3, takes care of Drupal 7. Unfortunately, MariaDB packages aren’t available yet, but official DEBs from MariaDB’s website are, which can be installed.

Debian actually includes three different versions of Python: 2.5.5 and 2.6.6, with the latter being the default, while 3.1.3 is also included. I’m scratching my head as to what sin the 2.7 branch committed, leading to it being left out…

As for virtualisation support, though KVM has been ported to FreeBSD, I couldn’t find the related package (qemu-kvm) for the kfreebsd releases.

Moving on, Samba 3.5.6 makes it to the release. Samba 4 packages are available in Experimental (as well as Sid). Apache Tomcat version 6.0.18 and Nagios 3.2.3 complete the rest of the tool-kit. Oh, and Perl is at 5.10 (5.12 is available with Experimental).

Lastly, AppArmor isn’t included in Debian 6, and the only way to somehow have it is by compiling a custom 2.6.36 kernel. SELinux is available, but not installed or enabled by default.

Experimental and Backports

Debian is Debian because of its strict policy of including only stable and known-to-work packages. This means the packages are always somewhat old. While, most of the time, stability is the priority for Debian users, sometimes you just need that new version of a package, and it just doesn’t appear in this Debian release. Debian doesn’t have things like Ubuntu’s PPAs, but it does have two officially sanctioned repositories that deliver updated packages: Backports and Experimental.

Backports

When a package is deemed to be mature and stable enough in the development cycle of the upcoming release (or Sid, if there is no upcoming release yet), Debian tries to backport the package to the current release. If it works well — meaning that no more than just a few dependencies need to be backported along with the package in question (and also, those few dependencies don’t include any core packages, such as EGlibC or GTK+) — then the backport is made available via the Debian Backports repository.

There are a few caveats to using Backports. Debian plays it safe, so you can only add the Backports repository, not enable it. Hang on — if you can’t enable the repo, how on earth do you use packages from it? Well, Backports is implemented as another release, so you’ll have to ask Apt or Aptitude to target the squeeze-backports release to download packages from it. System policy prevents Debian from automatically fetching updates to every single package on the system from Backports, but once you install something from Backports, you’ll receive updates to those packages all right.

Experimental

Experimental is for daredevils. When a package first enters the Debian Project, its entry point is Experimental. While it’s in Experimental, it’s stabilised to a point where it can enter Sid, and then be backported to other releases. The thing is, you don’t want to be using packages from Experimental if you can help it. Experimental packages are dangerous to the point where they can cause massive data loss. However, some packages such as LibreOffice (suddenly everyone’s obsession) are currently (as of this writing) in Experimental only, so there’s only one way of getting such packages.

Experimental is implemented in a fashion that’s similar to Backports, but with additional safeguards — you have to manually update packages from Experimental; even updates will not be delivered automatically.

So how do you add these two repos? Well, start by creating an empty file in /etc/apt/sources.list.d (you can create one file for each repo, or put both repos in a single file). By the way, in Squeeze, Apt now supports splitting your sources.list file into many parts stored in the sources.list.d directory. The sources.list file still exists, though, and is also parsed, right at the beginning.
For Experimental, fill in the following lines:

deb http://ftp.debian.org/debian experimental main
deb-src http://ftp.debian.org/debian experimental main

For Backports, use the lines given below:

deb http://backports.debian.org/debian-backports squeeze-backports main
deb-src http://backports.debian.org/debian-backports squeeze-backports main

Now update your package metadata by running apt-get update, and install packages by targeting the release, such as apt-get -t experimental install packagename, or apt-get -t squeeze-backports install packagename.
If you want to automatically track updates from Experimental, you’ll have to do it package by package, using a technique known as Apt-pinning. Edit the /etc/apt/preferences file, and add the following for every package you want to track:

Package: packagename
Pin: release a=experimental
Pin-Priority: 800

This isn’t necessary for Backports, since once you install a package from there, updates are automatically tracked.

The verdict

Debian 6 was in many ways an important and path-breaking release of Debian, but is it really relevant today? Debian as a desktop system isn’t really something you’d like to use — it’s too old. Debian for servers? Well, it does the job extremely well, but Ubuntu Server, while providing LTS releases every two years (which coincides with Debian’s new release cycle), has better support from applications, built-in support for EC2 clouds, and commercial support from Canonical (with stuff like Landscape, which even Red Hat cannot boast of).

Moreover, day by day, Debian is getting more purist in its approach. For a server OS, it beats me why SELinux or AppArmor wasn’t included, and the fact remains that even if I use it as a desktop, it still needs a bit of tinkering around with configuration files in /etc to fully realise the potential of the system. Although I do agree that porting in Software Center from Ubuntu was a very nice touch, and it does make managing repositories and installing software a lot easier.

There’s only one thing I can say about Debian 6: it may have been released just yesterday, but it got outdated 6 months ago. So unless you have a reason for using Debian, both on the server and desktop front, I’d recommend Ubuntu. On the other hand, if you do have that reason for using Debian, go ahead and upgrade, because you will be blown away by the amount of polish that has gone into this release. Debian 6 is indeed a worthy upgrade to Debian 5, but not really to other distros.

14 COMMENTS

  1. 1. The FreeBSD-based Debian is a “technology preview” or something, which means it’s not really an official, full release like the Linux versions.

    2. Debian stable isn’t too “old” for desktop use. That’s just your particular opinion.

    3. You shouldn’t call Iceweasel crap unless you really understand the reason behind the rebranding.

  2. So you think that greater version number of softwares is KOOL[tm] ??
    So you think running a latest release of a webserver software will make your system KOOL[tm] rather than using a well-known rock solid version ??
    So if Ubuntu has xyz software which than in Debian its name is abc that will make abc = CRAP ??
    Doh…is that what you believe ?

  3. To us “really Debian GNU/Linux users” Debian like the way it is,go and use your butnuts stuff,and please don’t call Iceweasel a crap,It seems to me you don’t understand what you’re talking about.

  4. Hi,
    “You should not need to manually download a Web browser—c’mon, who does that?”
    –> Well, every Win users, right?

    Thanks for the article. Yet, it’s quite funny how it starts, presenting Debian as something important and positive, and end as saying, it’s obsolete. I guess that good things take time :)

  5. hi there,

    Nice riview…
    This is a bit off topic … I see that you’r debian installation has icon only on the taskbar,How did you enable this?

  6. I’ve been a loyal Debian user on my desktop for 4 versions now.
    No Debian install has been trouble free, always some tinkering experimentation and google-ing involved to get it to the “just works” stage and Squeeze is no different. I’m almost to the “just works’ stage 30 days in. Some software issues, some hardware but the fact is no Debian install can possibly be trouble free on every machine out there and it cracks me up when people try to say “oh it installed for me just fine and worked with all my hardware” when I know that’s probably not true. In fact during my install I got no messages about missing firmware but predictably some of my hardware wasn’t even recognized and/or does not work with the provided driver.
    As for the age of the packages, I don’t care as long as they all work well and work together. In the case of Squeeze, many of the default programs and packages in the main repos do not always get along. One annoying example is Flash and Nouveau don’t work together, and that’s assuming you try and download flash on a day when the multi-media repos are online. They’ve been having major problems with uptime this last few months. You’ll also have problems with Skype, Gnome, Wine, DOSBOX,webcams, microphones, and that stupid weasel to name a few.
    Considering all that the Debian developers hoped to accomplish with this release, the results were much better than I expected but clearly seemed quite rushed by Debian standards. Debian’s developers did themselves and Linux in general a huge disservice by releasing Squeeze long before it was stable and ready.

  7. Harshad all linux are true linux! debian/ubuntu/fedora/rhel/suse all are essentially the same! remember Linux is important distros aren’t! :) Peace!

  8. Harshad, it depends – if you don’t care about outdated versions of applications, Debian is really stable – but if you care, Debian is not so stable – and Debian installer is not the best one, neither Mint-Debian – i got really amazed with Crunchbang – if people want to be really amazed with Debian, just try it from Crunchbang installer, and later, upgrade to wheezy- some few packages may get broken (like blender, lxappearance, etc.,), but the experience can be far better than from Ubuntu, Lubuntu or PureDyne

  9. Harshad and Nadeem – the true difference between distros are essentially their packaging format – Debian and Ubuntu based distros uses .deb; Fedora Suse, Mandriva and Cent uses .rpm; Slax, Puppy, DamnSmall, TinyCore and Gentoo uses even other packaging formats – choosing between them depends on respective experience you may have and how comfortable you feel among them (like some problems you may find, activity from community support, how open are to your contributions if needed, etc.)

  10. Si Te Giña El Ojo……………. Te Kiere Conquistar
    Si Te da La Mano …………… Sufre x Amor
    Si Te Mira Mucho ……………..No Puede Vivir Sin Ti …
    Si Te Pide Un… Beso ………… Es Educado
    Si Te Toma La Mano …………..T…… … … … …e Kiere Mucho
    … … Si Te Mira De Frente ………..Te Kiere Mas De Lo Ke Imaginas
    Si Te Acaricia El Pelo …………..Esta LocO X Ti
    Si Tropieza Contigo …………..Busca Tema De Conversacion
    Si Te Aprieta La Mano ………….Gusta De Ti
    Si Se Despide Despacio …………. No Te Puede Dejar ir
    Si Te Kiere Conocer ……………..Busca Tu Amor
    Si Te Mira De Reojo …………….. No Puede Dejarte
    Si Suelta Una Lagrima ………… Esta Muy Triste
    Ahora Pide Un Deseo !

    El ke leyo esto mañana sera el mejor dia de su vida,

    mañana tu amor se va a enamorar de ti, ustedes se van a juntar, pero si no mandas esto a 20 comentarios!!antes de las 12:00 de la noche de hoy tendras mala suerte

  11. Thank you for your article, I’m not a true Debian fan (Gentoo here) but I acknowledge it’s importance in the development of Linux. It’s an interesting read which makes a change!

    Now I must go to resume mocking Ubuntu “experts” :)

LEAVE A REPLY

Please enter your comment!
Please enter your name here