You Can't Have Your Cake and Eat it Too With GNU/Linux Distributions

The reason that “The Year of The ‘Linux Desktop’” is mostly a meme and thrown around as a buzzword in blogs is because we fundamentally misunderstand the meaning of the phrase ‘Linux Desktop’. The ‘Linux Desktop’ as most people think of it is a myth and something that will never happen, not because the open model of the Free Software desktop isn’t viable, but rather because most have the wrong idea of how a desktop that affords you freedom should be.

Tell me if you’ve heard an anecdote of this type somewhere:

…So I went to try out Linux, mostly because I was sick of $PROPRIETARYOS. I installed $POPULARDISTRIBUTION since the desktop looked nice and people said it was ’easy’. I had to do a weird thing to get my graphics working, but I followed a guide online so it was O.K. I was smooth sailing, until about a week ago when a system update broke my graphics. I don’t know what happened, but I went back to $PROPRIETARYOS because it never breaks like that. Guess Linux isn’t ready for ‘prime-time’ yet.

Hmm… What could have happened? It broke during an update? Jeez, these distribution maintainers are awfully irresponsible for not being able to maintain a system that “works”.

It’s understandable for a new GNU/Linux user to be confused that a component of his operating system seemed to have stopped working. However, notice the order of things that happened.

  • A user picks a distribution filled with pre-loaded software and configuration,
  • The user has a special case where they need to change a default configuration to suit their needs,
  • This modification was the probable cause of some trouble brewing outside of the user’s awareness, and so he chalks it up to lack of polish.

A key difference between a proprietary operating system and one that affords you freedom is the fact that you have the ability to choose how your computer works, and change any aspect you’d like. For some reason, though, distribution projects pride themselves on piling on as much of their own configuration into the disk image as possible, for the out of the box experience.

Issues usually come about when you then try to change something about your system. What’s fine and dandy at first turns into a maintenance nightmare when you’re trying to figure out what those default configurations are, and you suddenly need to distinguish between general-purpose software documentation, distribution-specific documentation, and forum posts that may or may not be relevant to your problem, because you have no idea what software your computer is running, for the most part.

This is the phase where most new users get too frustrated, and quit.

The problem lies in wanting to have your cake and eat it too. I want an operating system that is libre and configurable to the highest level, but also, I want an operating system that makes every decision for me, except when I want to, but also never collides with my actions. It should always do what I want and never do what I don’t expect. The trouble that distribution projects often come to face with is the sheer amount of directions they’re being pulled into in order to appease “the user” and make sure they never have to learn anything about the software they’re running. They market themselves on being “hassle-free”, when it’s never further from the truth with those projects. All of the sudden, you see users “distro-hopping” and getting frustrated because they can’t find an image of GNU with everything they want and nothing of what they don’t want.

No more telling people to blindly install Mint because “it’s easy and works”. The standard needs to be set for users to configure their own systems, so that they can choose the software they want. At the very least, a user needs to know what programs they want to install. Less decisions made by distribution developers and more decisions made by the computer user himself. This way, a user can usually diagnose a problem with his GNU system, or change his system to his specific needs, because he knows how he’s configured his computer to work. Even if they can’t solve general software problems, they’ll surely have a better idea of how to explain it to somebody who can. The user can get the full benefits of a GNU/Linux system without compromises for the illusion of ease.

Distributions that embody this idea are usually called “minimal”, but are also wrongly classified as “for advanced users” or “only if you want to know under the hood stuff”

You’re an elitist! You think computer users want to live in the command line all day! I’ve got a job, buddy!

The thing I don’t understand about this argument is that you actually save time in the long-run by choosing your configuration when you install your operating system, which maybe takes an afternoon, max. You don’t need to be a programmer or a command-line wiz to type a command to install your audio server. Taking the time now beats taking even more time later when you’re doing something mission-critical and suddenly need to figure out why running ‘apt upgrade’ broke your special manually-installed driver. Then, once you have that configuration, it isn’t like you need to re-write it every day or something. You can back it up and save it, and share it with other people. You can modify it to suit new hardware or different needs. All of the sudden, you’ve harnessed the power of a truly Free operating system. This is what users coming from proprietary and evil operating systems don’t understand, and at no fault of their own. You can’t promise a lifelong Windows user Windows if you’re giving them GNU instead. They will be frustrated when they mistake design paradigm for instability.

tl;dr: RTFM

home | blog index | rss | contact me | PGP public key?