Linux Has Lost the War for My Desktop

 

I recently switched to a MacBook as my primary computing platform after 8(!) years of nearly-exclusive Linux use. I’ve got some hardware issues that are nearly driving me mad, and I’m not thrilled with Apple’s lengthy projected repair schedules. That being said, there’s precious little I’m missing from my formerly-favored operating system since the switch.

During my last two months running Linux, it seemed like every software upgrade I attempted would introduce a new major bug into the system.

Oh, you turned off your Bluetooth headphones? You clearly aren’t doing anything important, let me kernel panic on you.

Wait, you’re running on Intel graphics? Let me take 30 seconds to re-render your gvim window because Cairo suddenly hates bitmap fonts.

Ah, I see you’re trying a new Xorg video driver with a different acceleration architecture to try and side-step the cairo bug. Let me introduce regular visual artifacts and an occasional kernel panic to keep your life interesting.

Trying to suspend your system to throw in your backpack on the way to a meeting, I see. Let me kernel panic, just so your managers know you can think on your toes.

Using WiFi? Surely you don’t need a connection that will persist for more than 15 minutes. Trying your ethernet port? Sorry, we broke the power management for the intel drivers four months ago so thoroughly that the only effect of plugging the cable in will be the packet collision light on your switch lighting up like a torch.

My patience was at an end.

Linux Hasn’t Changed…

Back in 8th grade when I started running Linux, I was fascinated, staying up late wrestling with video drivers and recompiling everything I could lay my hands on. There were always new things to learn, new things to fix, and exciting new developments to play with. I never did anything truly vital on my computers (though I may have thought so at the time), so I was free to break things at will.

During college, I always had access to lab machines running fairly recent Fedoras, and easy ssh access to linux servers and file shares, leaving me free to continue breaking my personal computers. By keeping all of my homework in a git repository on the school’s servers, I could easily pick up my work within 15 minutes of any disaster. Even better, I could continue working from pretty much any place on campus.

During my 8 years as a Linux user, I’ve experimented with pretty much every major distribution out there. I started with Redhat 8, moved through some Fedoras, Gentoo, Debian, Ubuntu, a masochistic Slackware phase, back through Gentoo, Funtoo, Sabayon, and finally onto Arch Linux. These are all incredibly different systems, but they all share one commonality: Things broke. A kernel bug would come in and prevent me from burning CDs. A minor xorg update would completely nerf my existing display configuration. Attempting to configure my audio to use dmix would leave me suddenly unable to launch anything that used libao.

…But My Perspective Has

Now, though, I need my computer to work every day, all the time. I can’t afford to update my system one night and come into work finding that xrandr has suddenly changed its parameter format and I’ll need to google for half an hour to just get my external monitor to work. My Mac surely has its problems, but they aren’t nearly as egregious. I get the same sort of comfortable shell environment, an awesome terminal emulator in iTerm2, a surprisingly good package manager in Homebrew, and my favorite editor in MacVim. The manpages are even up-to-date and well-written. A shocking amount of my existing experience has ported effortlessly over.

Linux will still have a proud place on my servers, where there aren’t nearly as many rapidly-changing software components. My Arch fileserver has been proudly marching on with virtually no software issues for the past four years, and shows no signs of stopping. For desktop use though, I’m afraid Linux will be taking a back seat.

Conversation
  • Bruce says:

    I enjoyed reading this. I could feel your excitement and pain, but also gained a good insight to a Linux strength. Thanks.

  • Topher says:

    I can appreciate your pain. I’ve been a Linux desktop user since 97 and still love it. I’m on Arch as well. My laptop wifi got a little dodgy last month, but other than that I haven’t had any problems with Arch in years, which is surprising given it’s Arch.

    My strongest pull is my window manager. I’ve been an e16 user since about ’99 and I dearly love it. The mac interface looks so crowded and messy. Simply moving a window looks like more work on a mac.

    I may end up there someday, but for now Linux is the perfect desktop for me.

    • Mitchell Johnson Mitchell Johnson says:

      I went through a lot of window managers and always wound up setting back into Openbox. I was never really attached to one very strongly, although I can definitely see the importance.

      The lack of keyboard window management in OS X definitely annoyed me at first, but I’ve since discovered Divvy, which I’m quite enjoying. It’s still not keyboard-driven, but the slick window tiling beats the learning-wall of keyboard-based tiling managers in Linux.

      • Jamison Carroll says:

        This is a great article that’s helped me to feel more at ease about staying in an OSX environment, when I’ve definitely been considering switching to Arch Linux. Some of Apple’s design decisions over the past couple years have left me wondering if they still intent for professionals to work on their OS, but I’m certainly fearful that if I switch to Linux I’ll spend more time fixing my car than driving it, as it were.

        As far as window management, I’d highly suggest Moom. I’ve gone through about five or six different tools, and not only does Moom feel like a native part of the OS, but you can customize the grid on which your windows align, control it via keyboard, create custom window positions, and more. The only downside is that you have to spend a little for it – but you get what you pay for.

  • Maybe I’ve just been lucky with my particular hardware/software config, but since switching to Linux Mint on my work laptop, I have _never_ had the types of problems you describe. All the hardware worked out of the box, and updates have never broken anything.

    This might because of Mint’s system for rating update safety. By default upgrades that could break existing functionality are not installed. This adds some sanity to the update firehose, and I think it has contributed to my overall system stability for the last 2.5 years.

    Anyway, if you like Linux but also want things to Just Work, you really should give Mint a try if you haven’t already.

    • Trev says:

      I actually upgraded from Mint 12 to Mint 13 LTS and -everything- broke. My default installation failed to load a grub / boot partition, so I HAD to have a USB or CD in for the OS to even boot up. When we finally got that fixed, all of the repositories held older versions so when I tried to set up vagrant and my development box, I couldn’t even get a basic RoR application to run, or Vagrant to boot up a VM without crashing something. Mint was great on my personal computer when all I needed was a lightweight machine with audio and video support out of the box. But when it came to my work, I steered away.

      Not 2 weeks later, after constantly fighting the installation, I completely blasted the system away and put Fedora 17 on my system. So far it has been significantly easier getting everything setup and installed without (too many) hiccups. At least for a pure development system, it seems to be better, but I’m honestly starting to miss my old macbook pro that held less headache over configuration and I could just code.

    • Brian says:

      I’ve had Mint 13 running on my laptop since it was released, and haven’t had any issues. Its been really stable, and the Cinnamon desktop is exactly what I’ve been looking.

  • Jason Porritt Jason Porritt says:

    I was a long-time linux desktop user — starting in college in 1999. I never minded wrangling packages back then because I didn’t feel like there was a better alternative. KDE and I got along really well, though I also used Fluxbox, Blackbox, Gnome, and Enlightenment over the years. I really liked KDE’s SSHFS integration, and the Kate editor was ahead of the curve back in the day.

    Today, though, I don’t want to manage my OS at that level if I don’t have to. And with OS X I don’t have to (er, mostly). Now it’s just wrangling different versions of ruby and related gems to get to the work (and play) I’m more eager to start.

    Some days I do still miss KDE.

  • Gabriel says:

    Well, what about using debian stable?
    Better yet, only install security updates and software updates you really need.
    If you use linux like Windows, i.e. only installing and updating self contained software, it won’t break

    That said, I wouldn’t use linux in my work machine for one simple reason: Office
    The opensource alternatives just don’t come even close to cutting it. Heck, you can’t even open a Word document without messing with the formatting. Powerpoint is probably an even greater pain and I use some pretty advanced excel features, wich i’m unsure how would behave under openoffice.

    • Mitchell Johnson Mitchell Johnson says:

      The problem with sticking with something like Debian stable is that at some point, I’m inevitably going to need to install some new custom package, some new version of something that’s already in the repositories, or want some neat new kernel feature to improve battery life or support some dongle or widget. As soon as that happens and you have to start upgrading libraries, you lose the benefits of a non-rolling release. While it isn’t necessarily an inescapable conclusion, in the past I’ve always wound up decimating linux installs after a shockingly short period of time.

      You also end up stuck with the same bugs you’re encountering at install time for a very long time.

      As to the necessity of Office, I haven’t actually needed it since I graduated from college. All my word processing gets done in google docs. Any graphing or data visualization that most people would do in excel gets done in gnuplot or something custom.

  • grigio says:

    sadly I’ve to agree. Anyway Linux support on Mac is quite good, maybe if 3d acceleration an the battery drain will be fixed many people could go back to Linux.
    Here is Ubuntu working on a macbook air out of the box http://grigio.org/macbook_air_4_1_2011_ubuntu_linux_12_04_liveusb

  • Andrew says:

    Interesting, it looks like I am the first one to disagree… :) I think the main difference between OSX and Linux is that if something bothers you in Linux, you can at least attempt to fix it. Granted, it sometimes means you end up with an unstable system – but with OSX you simply can’t. Don’t like it the way Apple did it? Too bad.

    I have Debian stable + some testing packages on my machine, and Firefox installed in /opt/ (IceWeasel just doesn’t cut it). It is 4+ years old, never had a problem with it, but then again I try to just use the OS. My advice is to stop tinkering with the system. Does it work? Leave it alone, don’t use those “latest-and-greatest” kernel modules. I have been on Debian on different machines for last… hmmm, 10+ years? I went to Debian directly from Slackware. Never moved away, never needed more.

    As for Office – well, LibreOffice has about as many problems as MS Office, they are just different. I wouldn’t call any of them stable, but they are still way better than writing documents in LaTeX (except for scientific texts, of course – LaTeX still rules there :) ).

    I installed OSX in a virtual machine just to see what the fuss was all about. Installation went smoothly, but using XCode (and whole OS) was a really painful experience. Can you change the position of buttons? Keyboard shortcuts for changing screens? I guess I would get used to it if I used it more, but I had no motivation.

    Anyway, nice to hear your productivity got better, whatever tool you are using. :)

  • Chris says:

    What hardware were running Linux on and having such problems with?

    • Mitchell Johnson Mitchell Johnson says:

      This was an HP EliteBook 2530p. Nothing particularly special, and from what I could gather, the ACPI DSDT wasn’t even all that buggy. Almost entirely Intel hardware (CPU, chipset, graphics, wifi, ethernet, SSD), which makes the fact that I was still having problems even more condemning in my mind.

      • CyberFonic says:

        I’ve been using Linux since … like forever. I’ve noticed that recent notebooks are more temperamental than the older ones. I think it has to do with the combination of makers seeking ever greater functionality at ever lower cost. Like you, I use Linux on all my servers but I’ve resigned myself to using all new hardware with the OS that it came with. Yeah, MacBook for travel, iPads, Androids, etc to satisfy the gizmo lust. So if I don’t like the software, then I won’t buy the hardware.

        I’m increasingly finding that I “must have” a good terminal window and webkit based browser and the rest is … the rest ;-)

  • Avdi Grimm says:

    I’ve said it before… the difference between Linux and Mac OS X is simple: OS X only has to run on Mac hardware. Whereas Linux has to run on *everything*. The only way to have a happy, largely pain-free experience with Linux on the desktop is to treat it like Mac OS X, and only buy the “reference hardware”. Now, granted, there is no official reference hardware for Linux; but certain manufacturers have effectively become reference platforms. That’s why when I finally upgraded to a new development laptop this year, I bought a ThinkPad. Everything on it Just Works under Ubuntu.

  • Comments are closed.