The current crop of Linux distributions
Last month the British Linux magazine, Linux Format, did a big comparison of the current crop of Linux packages or distributions (distros for short), concentrating on the ten most popular as measured by DistroWatch. They were SUSE (version 10.2), Fedora (Core 6), Mandriva (Spring 2007), PCLinuxOS (2007), Debian (version 4), Ubuntu (7.04 “Feisty”), Slackware (version 11) and Sabayon (version 3.4). Of these, Ubuntu came out as a clear winner, scoring full marks in hardware support, community and software selections and very highly in security and performance. At the bottom, Slackware and Sabayon came out very poorly on all fronts, while the others all seemed to fail badly on at least one issue. With PCLinuxOS (a relatively new distro but now the second most popular on DistroWatch, an installable live CD based on Mandriva), the fall-down point was security (although their main criteria was how long it took to patch a security hole which was revealed a full year ago, something which affects none of the versions they were testing); with Fedora and SUSE, it was performance. Having a computer which I use mainly for programming and experimenting (things like typing letters I do on my Mac), I’ve installed most of these at some point in the past year. My experiences haven’t been happy, in a lot of cases.
Some of my problems weren’t to do with the software at all: when I first got my Linux computer - a Compaq dual-processor Pentium III from around 2000 - the firmware was out of date, and the computer kept hanging. In the end, I had to find a floppy disk with data I could afford to lose, and load the new firmware from that. After that, the hanging stopped. However, a lot of the software did turn out to be, frankly, a pain in the backside. Most of them have some outstanding good point; it’s just that none of them have all of them. Some are going to notice that the things which make me switch distro are petty things, and that some of them would only bother an experienced user, but a less experienced user might simply give up on Linux as a result of some of them, and I have every right to have minimum standards for what I’ll install on my computer and what I won’t. I want a large repository of software, particularly of major software, which I can install easily. I want it to work with my hardware, such as my sound card. I want to be able to install it in the first place without it crashing constantly, and that the configuration tools work properly.
Fedora Core 6, released in October 2006, is the oldest distro they had in the test, which perhaps makes it not a very fair comparison. I tried it almost as soon as it came out - on my old machine, I think (which I replaced because it kept switching itself off). Fedora Core 6 became notorious because it prompted Eric Raymond, of The Cathedral and the Bazaar fame, to switch to Ubuntu and state why on the Fedora development mailing list, among his reasons being the “wretched performance” of the software installer and updater, YUM. This was a major reason for my dumping FC6 as well. YUM is just so slow! Any time you want to install a package, it takes ages for it to resolve what else it needs to install (or remove). At start-up time, this means several minutes; any other time, it’s several seconds or a minute, but it’s still considerably longer than the competition - APT (Application Package Tool), which originates with Debian. You can actually run APT on Fedora, but the reason people don’t much nowadays (according to Chris Tyler in the O’Reilly book Fedora Linux) is because YUM supports multiple architectures, necessary if you have one of the new 64-bit computers and you need to install 32-bit software on it. Still, Ubuntu still uses APT, and somehow gets round this problem (which mainly affects a handful of closed-source programs such as the Flash plugin, which so far hasn’t been released in a 64-bit version despite most home computers now being sold being 64-bit). Surely Fedora could have amended APT to take account of this problem, and used that - which works, and works well - rather than foist YUM on us?
APT is nowadays accompanied by graphical front-ends like Synaptic and Adept; Fedora Core 6 provided Pirut as a graphical front to YUM. Pirut was an utter dog, not only taking the usual ages to resolve dependencies but going unresponsive while it did so. The other problem I could not tolerate in FC6 was that the KDE menu also (you guessed it) took ages to appear when you clicked the F symbol. Fedora - like Red Hat Linux before it - always preferred GNOME for its desktop, for historical reasons. In fact, in 2002 when Red Hat included the new Bluecurve look and feel in both GNOME and KDE, one KDE developer resigned from Red Hat, saying “I don’t want to work on crippling KDE, and they don’t want an employee who admits [that their] KDE is crippleware”. Since I like my KDE menu to just open, I couldn’t have this. Fedora Core 6 just had to go.
Apart from a brief experiment with Slackware in 1996 (version 2), the first distro I used was SUSE - version 8.1, in late 2002. Originally SUSE was an independent company producing its own distro; it was taken over by Novell in November 2003. For the first year or two, SUSE was one of the less well-supported distributions, because Red Hat was basically king, and just about every book on Linux that was published covered Red Hat. I suspect that this was the undoing of Red Hat Linux, because who would buy a package for, say, £100 or more (which is how much the professional package cost), when they could buy a big book with the software included for, say, £35? But SUSE Professional came with two hefty manuals and YaST, its very comprehensive installation and configuration tool. Some people hate it, but I always found that it made my life as a user very much easier. I often experimented with other distributions, but often found myself making my way back to SUSE. Version 10.2, however, has one serious problem which means I simply can’t justify it occupying 15 gigabytes of my hard disk space: it won’t support my sound card. I can play the test sound, but when you try to play a normal sound file, it just won’t. It also made it difficult for me to access my CD/DVD drive; I installed it twice, and the first time it would not even open the drive when I wanted it to, citing D-BUS errors, and the second time it detected a newly loaded CD or DVD, but would not burn an image to CD or DVD and did not mount it in such a way that I could easily access it other than through the window that opened when I loaded it. It has a very comprehensive online update system, and through it you can get the latest update of KDE (or GNOME) and even Qt 4, which I use in my programming, but nowadays, starting YaST’s software management module takes ages. Longer, in fact, than running YUM, and as the program processes each file full of information about a package repository, the user is left watching one flickering message after another. On top of this, sometimes you want the latest stable version of a package, not a pre-release. When Trolltech put out release candidates of Qt 4.3, the people at the SUSE download site removed the stable Qt 4.2 packages and put up the release candidates - which I found rather frustrating.
Mandriva is one distro I’ve not had much joy with over the years. It started off as Mandrake Linux, a fork of Red Hat from a time when Red Hat were refusing to supply KDE because it was based on software (Qt) which at the time which wasn’t open source, and became Mandriva after taking over the Brazilian Linux company Conectiva, but subsequent versions of Mandriva have been very much Mandrake and not Conectiva. Mandrake was, in fact, one of three distributions I was faced with in PC World in Crawley back in 2002 when I first bought a copy of SUSE Linux (the third was Red Hat version 8). The first version of it I used was version 9.2, whose software selection seemed not to be as wide as SUSE’s (though I only used the free download version) and it had a nasty habit of paralysing my computer with swap-like operations which only ended when I switched off the machine. The only version of it I’ve actually liked was version 10. Its configuration tools, in my opinion at least, are nothing like as pleasurable to use as SUSE’s. As for Spring 2007, when trying to add fonts to the system using either Mandriva’s font installer or the KDE Control Centre, it would not do it, and the “drake” that was supposed to allow me to add entries to the boot menu wasn’t working either. Neither of these things were mentioned in the Linux Format mass review, but since at that point I didn’t know how to use the command line to do add fonts, it meant “goodbye Mandriva” for me.
I had a better experience with PCLinuxOS, even though I was using test versions rather than the final 2007 release. PCLinuxOS is a Mandriva derivative which installs from its Live CD and uses APT for updating and installing software, something which, in my opinion, is the first thing Mandriva should have adapted from Conectiva when they took it over. It only offers KDE for the desktop, not GNOME (although there is talk of including GNOME later) with Windows XP-like window decorations and a styling based on the now-standard Plastik. PCLinuxOS includes MP3 playback, something which is unusual because MP3 is patented; generally, distros ship without MP3 and it’s left to the user to download these things, which is allowed for a private user. It comes on just one CD, which includes the most popular apps like Firefox, OpenOffice, various internet and multimedia programs and GIMP; anything else can be installed using APT or Synaptic, which some have complained is more suitable for advanced users than for beginners, but I didn’t get lost in it.
Ubuntu really well deserves its top spot. I must say at the outset that I always use the alternative install CD and not the “desktop” one, which installs from a live CD like PCLinuxOS. Like PCLOS, it installs a standard desktop - you can choose between GNOME and KDE (and if the latter is installed, Ubuntu becomes Kubuntu) - and you can install whatever else you want afterwards. Ubuntu’s method is to take a snapshot of Debian’s unstable “Sid” repository, and to add their own touches to it, which they submit back to Debian. While the text installer for Ubuntu may look a bit dated, it’s a very simple walk-through procedure which has never given me any problem. I have a strong preference for KDE, and Ubuntu not only has a very fast and responsive KDE in the present version, but provides updated packages whenever a new version of KDE is produced, as do SUSE and Fedora. However, they don’t provide updated packages for much else, other than when it’s a security issue; if you want the latest version of Qt 4 or Emacs, you’ll have to grab it and compile it yourself. Ubuntu also doesn’t have anything like the extent of easy-to-use configuration that YaST and Mandriva provides; for example, there’s no graphical editor for the boot menu, and editing the boot menu by hand is not a beginner’s task by any means. Then again, it’s only SUSE which currently has a boot menu editor that actually works, as far as I can tell.
Finally, we come to Fedora version 7 (they dropped the Core part, because they amalgamated Core and Extras). This is currently what is sitting on my first hard drive (Ubuntu is on my second, and it’s what I’m using to type this). Since I prefer KDE, I first got hold of the live CD which features a KDE desktop, and after loading it up I was highly impressed with the look and feel of the desktop, with the exception of the way the fonts were rendered, which led to little bits of blue and orange around letters; this was easily fixed using the KDE Control Center, however. I’ve made several attempts to install it, most of which ended either when it told me it couldn’t read my partition table before partitioning or when it told me of “errors informing the kernel” about changes to partitions I’d not told it to touch, and then insisting on rebooting when I clicked “ignore”. I finally found out what was wrong here by reading this website, which led me to the “common problems” page on the Fedora Wiki. RTFM, I guess. As for the “error informing the kernel” problem, the solution is to click “cancel”, not “ignore”. I had previously assumed that “cancel” would cancel the whole installation, but it didn’t - when I clicked it, the install carried on.
I expect I’ll keep Fedora 7 on my disk for a while, because now that it’s installed, it works very satisfactorily. The problem of the KDE menu taking ages to appear has gone, and their KDE presentation has always been pretty good anyway - better than many KDE-preferring distributions, in fact, and that has not changed this time round. YUM is still as slow as ever; perhaps someone should rewrite it and not use Python this time round. I’ve also found out how to enable proper font smoothing on Fedora (AKA bytecode hinting, which is patented and therefore can’t be distributed, particularly by an American company like Red Hat), which makes the default font look a lot better. I’ve also found that the graphical tools which are supposed to install fonts don’t work, which I’ve now found out how to get around by using the command line (but others might not). I don’t think it’s necessarily the best distro out there, but I feel like I’ve gone through too much to dump Fedora now, and big update repositories are important to me and Fedora has them and some of these others don’t. It’s as if I’d taken over a dwelling which needed some work doing on it, and now that I’ve done it, I’m staying. That’s not to say that everyone will have the inclination or the ability to do what I’ve done.
A diversion into the Unix Dark Ages
In my search for a decent distro, I even gave Sun’s Solaris 10 a try, as I was able to get it for free under one of Sun’s give-away schemes. Solaris 10 is a commercial operating system which is sold with “big iron” commercial servers, but Sun have recently started open-sourcing it, so you can get open-source operating systems now based on OpenSolaris. Solaris does have a walk-through graphical installer, but the partitioner could not understand my partition tables and would not allow me to install Solaris alongside Linux on the same hard drive. I ended up having to wipe the Windows install I’d acquired with the hard drive, which wasn’t working and I’m not sure if it was authorised anyway.
When I finally managed to install the thing, it didn’t ask me to set up a new user account, so I had to log in as root and set up a personal user account for myself. When I tried logging into it, either at the console or with the desktop login screen, it would not let me. I ended up logging in as root to the CDE desktop (a commercial desktop going back to the mid-1990s which looks hideous), which is something you’re not encouraged to do with Unix nowadays, and trying to find the graphical admin tool which deals with user accounts, and found that the new account was locked. Fancy not knowing that, huh - that when you create a new user account, it creates it locked?
Solaris software installation also left a lot to be desired. To be fair, it comes with a lot more free software than Solaris 9 did, now including the GCC programming tools for example, but the range of available open-source software is much narrower. With Solaris you don’t get dependency resolution; you have to download the package and everything it relies on, and the packages install in /usr/local, which (at least on Linux) is supposed to be reserved for software you build on your own machine, not packaged software downloaded from the internet. KDE, which I prefer over GNOME for numerous reasons, isn’t present; you can download an out-of-date version, or build your own - and it has more than 250 dependencies. Sun’s GNOME (an old version, naturally) is rebranded as the Java Desktop System, despite it not being based on Java, and to my eye is rather over-decorated, although the JDS stylings can easily be replaced.
The problem Solaris faces now is that it’s just not like Linux, and skills people develop on Linux don’t always remain relevant on Solaris. People on Linux expect that they can easily download software, and up to date software at that, along with its dependencies, with a simple command or with a graphical tool like Synaptic; you can’t do that on Solaris. Admittedly you can download the “Solaris Express Developers’ Edition”, which does contain more up-to-date packages, but KDE 3.5 doesn’t seem to be among them, and the subtle differences in user experiences between Linux and Solaris are, I expect, still there. I suspect that if Sun wants people to be able to use its OS effectively, it has to bring the user’s experience in line with that of either Linux or Mac OS X, because those are the most commonly deployed Unix-type operating systems around and where most people nowadays learn their Unix skills, as Ian Murdock, the founder of Debian who recently moved to Sun, admitted in his most recent blog post - indeed for many young people, Linux is Unix.
Perhaps Sun isn’t expecting that younger Linux users will simply switch over to Solaris, particularly if they have to pay for an operating system when they can get something similar for nothing. However, the number of Sun workstations, and Unix boxes generally, in academia has decreased - my old university at Aberystwyth, for example, had two rooms full of Sun workstations and another of DEC Alpha graphics machines when I was there, but when I enquired a couple of years ago I heard that the “Sun Lounge” was now called that for “historical reasons”, i.e. the Sun workstations had gone. (However, new Sun machines were installed there in 2004, but the Alphas remain gone - indeed, HP dumped Alpha when it took over Compaq, which had taken over DEC.) Books about Linux can be found in any big bookshop, but the same certainly is not true of Solaris, and there cannot possibly be so many old Solaris hands out there for Sun to be able to ignore the vast numbers of people who are competent at administering Linux, at least for personal use. As things stand, it’s not worth it for any Linux user to migrate to Solaris 10, even if it is free.
Possibly Related Posts:
- Did Linux succeed? Did BSD fail?
- On Ubuntu ditching Unity
- When will Google fix the Chrome wi-fi bug?
- A fortnight of upgrades
- Korora 19: not a great advance on Fedora