Linux Desktop RevisitedTim Hammerquist August 31, 2010 #linux #macos
Lately it's been just one insufferable disaster after another. So I was thinking to myself, "Self, what's the one thing that can make us even MORE miserable than we already are?"
The answer, naturally, was to make one more go at trying to build the perfect Linux desktop.
First off, the hardware. If there's one thing I learned in the last 12 years of Linux hackery, it's that Linux don't take kindly to strange hardware. To ensure my project yielded the maximum possible level of frustration, I got my hands on the newest CPU, chipsets, and PCI cards I could find. And the winner was a brand new Intel Core i7 quad-core processor and the beefiest NVIDIA card my budget would allow. CPUs are practically self-documenting in recent years, so what concerned me was the chipsets surrounding it. My masochism only slightly faltered upon choosing the NVIDIA card; they've always given me the least trouble with Linux.
Unsupported chipsets are the number one source of Linux desktop frustration. While your top of the line, 5THz Core Trio i387 CPU will probably work like a dream under most Linuxen, you'll be isolated, stagnating in silent, drab Consoleville if Linux doesn't have drivers for your snazzy video, audio, or network devices.
Surely, I thought, this will break my will.
Which distro? Encompassed in these 2 words is the origin of literally millions of Open Source Holy Wars.
However, 5 years ago, when I wanted a desktop machine that Just Works(tm), I chose Mac OS X. And I'm not remotely ashamed to call Ubuntu Desktop "the OS X of Linux." It goes to a good deal of effort to install a full, working, integrated system with minimal fuss. It doesn't require a massive collection of media to install. And perhaps most importantly, it isn't Red Hat. (No, I will not be recycling that particular grudge today.)
Finally, to give my lesson in torture just a little more "oomph", I decided to install a 64-bit operating system.
So I download the install ISO, burn it to CD, slap it in the drive, cross my fingers, and boot.1
So the good news is, the OS (Ubuntu 10.04 Desktop) installed without any problems. The bad news is, after installation, everything... worked!
Well, that's not entirely true. There seems to be some sort of confusion between the on-board Intel HD Audio card and the NVIDIA card's HDMI audio support. However, adding a little bit of apt magic fixed this right up.2 I'm not sure if digital audio is working; I don't have any DisplayPort devices with audio decoders handy to test.
That's it for software. No dual-booting on this one.
Ubuntu's definitive desktop environment is a heavily customized Gnome. It's nice. Really. It's also heavily influenced by Mac OS X, which is also fine. Really. But there's one thing I've been missing in my time on OS X. That thing is Awesome.
Awesome is a window manager for X, similar to Gnome.3 But while Gnome follows a more common "desktop metaphor" for its window management, Awesome is one of a class of tiling window managers. Among many other things, this structure lends itself well to using the keyboard to navigate among the many windows. And finally, I just really like it.
Why Awesome and not Ion or xmonad? Not sure. If anything, I'd have to say their early support for an integrated system tray and widgets.
You can't have a "desktop" Linux machine without being able to play audio and video files! This is another key point that Linux has had to struggle with. The Free/Open Source Software philosophy doesn't really mesh well with DRM and codec licensing. This is why I chose Ubuntu: they are entirely Free by default, but allow installation of non-free codecs and libraries easily upon request. And here again Ubuntu came through. It also let me install NVIDIA's binary linux drivers so I could use a much greater range of my video cards features, including OpenGL rendering. Just a few packages added in aptitude left me fully able to play the various media files in my collection.
Not only had my attempt to utterly destroy my already battered psyche failed miserably, but I now had myself a pretty sexy Linux desktop machine to play with, and a Mac Mini sulking slightly less usefully in the corner. OS X is still a better multimedia desktop OS, but Linux has once again regained its status as my preferred all-round desktop and development workstation.
As Hero Boy says, "I have failed to succeed!"
HA HA HA! ... Laugh with me! Laugh with me, Jocko!
There was a brief moment of panic when I thought I'd hit the blank screen on startup bug again, but I was saved. I also had luck installing alsa 1.0.23 from source; however, using apt repositories saves me having to repeat all this every time the initrd gets regenerated. Technically, Gnome is a "desktop environment" and Metacity is the "window manager."