It still isn’t the year of Desktop Linux. People may be ready to move away from Windows, but Linux still isn’t ready for them. Let me tell you about my recent operating system experiences. It all started when my venerable Pentium III died. (Well it didn’t quite die outright, but the power supply became unreliable.) The primary reason for me keeping it alive was for ATO eTax. It’s kind of sad that I had a computer that I only really used once a year, but there you go. I used its death as an excuse to buy a new Mac Mini. It’s capable of running Windows for eTax, and it can run x64 Linux for SDLMAME, and OS X for random cool stuff. The new Mini has FireWire 800 (as opposed to 400 on the old one) and NVIDIA 9400M integrated graphics (as opposed to Intel on the old one), which addressed my primary complaints about its predecessor.
Of course it came with OS X installed, so the first thing I did was update it, tweak it to my liking and install tablet and printer drivers. That was all painless, and I had a fully functional Mac/X11/BSD system in no time. Buoyed by my success, I decided to install Windows XP. Boot Camp Assistant took a while to do the live repartitioning, but it worked, and I had a FAT32 partition to play with. The machine booted from the XP install CD, and I proceeded to format the partition as NTFS and install Windows. It took a long time, and I had to restart about ten times during the install, update and driver install process, but in the end I had a working Windows installation, too, and I could switch between OS X and XP on boot. That was enough for one night.
I downloaded and burned the Fedora 10 x64 live CD, as it seemed like the path of least resistance. That was where my luck ran out. Trying to create a partition for Linux wasn’t anywhere near as smooth as creating one for Windows. Using Disk Utility while booted from the hard disk went nowhere. Apparently the live partitioning feature isn’t that stable. Booting from the OS X install DVD allowed me to repartition the disk, though.
Next, I tried restarting from the Fedora live CD, but no joy. Didn’t get past the firmware’s OS selection menu. Switching the machine off and booting from the CD worked, though. But then I was left with just a blinking cursor — X11 wouldn’t start. I realise that they won’t put the NVIDIA drivers on the CD because they aren’t “free” (as in beards), but shouldn’t it at least be able to choose a VESA driver for compatibility in the event that it doesn’t recognise your hardware? Windows manages to do that. Lack of X11 didn’t stop me switching to a console to do stuff, though. So I logged in and used parted to reformat my Linux partition as ext3, and then created a contiguous 2 GB file to use for swap space.
Since I’d played with the partition map, I had to fix BOOT.INI for Windows. But now I had a problem: despite correctly identifying the GPT partition scheme, and not altering the layout at all, parted had somehow managed to damage the GPT in such a way that only one partition would show up in any OS X utilities, and attempting to verify the OS X boot partition with Disk Utility caused the system to hang. It also screwed up the fake MBR so Windows wouldn’t boot at all. After several hours of messing around with partition table editors, I did manage to fix it without losing anything, though. Then I booted to a Windows recovery console (using the install CD) and fixed up BOOT.INI (by incrementing the partition number). I was back to having working OS X and Windows, with the dubious benefit of also having a blank ext3 partition. By this stage, I was pretty pissed off with Linux and considering installing Solaris just to make myself feel better. But it was time to sleep again.
Thinking about this the next morning, I realised that I now knew how to fix the partition map if I managed to screw it again. This emboldened me enough to give Linux another shot. (Yet another example of why I should I shouldn’t think so much.) I booted from the live CD and got the console up again. This time I hacked up the X11 configuration to force the VESA driver. That got me a desktop. I noticed that my tablet was working properly (take that, stupid Ubuntu live CD), and started the installer. It had to format my ext3 partition again (so much for the contiguous swap file), but it seemed to go through its thing. Then at the very end, it told me that the install had failed. It hadn’t screwed anything up this time, though. So I had a system with a working OS X installation, a working Windows installation, a working Windows installation, and a non-working Linux installation.
On the advice of other Fedora users, I downloaded and burned the Fedora net install CD. Booting from this one got me X11 using a VESA driver straight away. However, my tablet didn’t work at all. What’s with that? It provides an HID pointing device interface for compatibility that OS X, Windows and even the boot menu in the Mac firmware can use, but Linux can’t. But anyway, I did manage to work my way through the installation process using the keyboard. It took quite a while to download everything, but it didn’t fail at the end this time, and it did yield a working installation.
After booting from my new Linux installation, I was pleased to see that it was using a working VESA driver for X11 video, and the tablet was working. It also recognised my external RAID, and mounted HFS+ and NTFS partitions. It was quite easy to configure RPM Fusion repositories and install the proper NVIDIA drivers. That got me higher resolution and better performance. I had to install the glibc compatibility package before I could install my printer’s drivers, but that was easy, too. So in the end, I got the lovely triple-boot system that I’d imagined.
But despite the fact that it worked quite well in the end, it wasn’t a simple process, and definitely wasn’t something a typical user could have achieved. Considering how unreliable the live CD is, it should be marked as unstable or experimental, and users should be steered away from it. If parted can’t deal with GPT, it should give you some kind of warning before it trashes your partition map. A common graphics tablet should at least give you basic pointer functionality. Bloat like GJC (which is completely broken), the Evolution mail client and Gutenprint/foomatic (only needed if you have a cheapo printer with no PostScript) shouldn’t be part of a default install.
Fifteen years ago, you needed to be technically adept to install any operating system. If you weren’t good with computers, you’d call your technically inclined friend or relative to help you out. In a way, no operating system was really “ready for the desktop” back then. Linux feels like it’s still at that point. Once it’s up and running, it’s fine, but to get it there, you need considerable problem-solving skills and/or friends to help you out. Windows and OS X have got past that point — anyone could install either of them. Linux really does have some serious catching up to do.