How To Find The Perfect Linux Distribution For You

Linux is a badarse open-source operating system. Take it from a card-carrying Linux lover. But it's not without problems. One such problem: There are nearly six hundred different versions of Linux out there -- an incredibly overwhelming number to even the most experienced of Linux users. If you've tinkered with Linux a bit and want to move beyond the basics, here's how to narrow down that selection and find the distribution that fits your needs.

Note that this article is not necessarily for beginners. We aren't going to go through a lot of the basic terminology here; you should already know a bit about how Linux works, what a desktop environment is, how package managers and repositories work, etc. To learn the basics, check out our Night School guide on getting started with Linux.

What Defines A Linux Distribution

A Linux distribution is more than just the look and feel of the desktop. A lot of different things go into making a distro what it is and you should try to take them all into account as you search for the right one. While most of these are customisable in any Linux distro -- that is, if you don't like what apps, desktop environments, or drivers come pre-packaged, you can always install them separately -- the idea is to find the distro that's as close to your ideal setup as possible. That way, you spend less time fiddling and getting everything the way you want. Here are some big things you'll want to keep in mind.

Package Managers

Traditionally, one of the biggest things that separates Linux distributions is the package manager. Those of you that have used Ubuntu are probably familiar with APT (or its graphical interface, Synaptic), and you'll find that same package management on Mint, Debian and other distributions. However, other distros have their own package managers. Fedora's Yum manager, for example, is a tad easier to use from the command line than APT (though it can be a bit slower at times).

More important than ease of use, though, is the availability of packages. Since Fedora is not quite as popular as Ubuntu, Mint, and other Debian-based distros, it may sometimes be harder to find the app you're looking for -- which means you'll be stuck building from source instead of just installing it from the repositories. Building from source isn't all that hard, but it won't allow you to automatically update that program when a new version comes out, which is a real bummer. So, consider both the ease of use and the popularity of a given package manager in your choice of distro.

Desktop Environment

The default desktop environment encompasses so many different parts of a distribution, but it's also the easiest thing to change. We've talked about the difference between desktop environments before, so I won't go into super fine detail here, but it includes things like:

  • The basic look and feel if your windows, desktop, and menus, as well as how customisable it is
  • Resource usage
  • The options available in your distro's graphical preferences (such as remapping certain keys, changing what items appear in your menus, and so on)
  • How well certain programs integrate with your desktop and each other

While you can always install a different desktop environment, it's probably still worth considering heavily. The closer the default desktop is to the desktop you want, the less work you'll have to do to set everything up, and the better all your programs will work well together.

Stability vs. Cutting Edge

Different distros have different release and update cycles. Some, like Fedora, focus on having the most up to date versions of all your apps and packages, so you always have the latest and greatest. However, this can sometimes come at the expense of stability, which is why other distros -- like Debian -- prefer to delay certain updates to make sure everything runs smoothly. If you always have to have the latest version of Firefox or any other app, something like Debian probably isn't right for you -- you'd want to choose something like Fedora which will be a bit quicker to get those updates out to you.

Hardware Compatibility

Different distros package different drivers in their installers, which means that, depending on which distro you use, you'll find that different pieces of hardware may or may not work out of the box. While you can often get other drivers installed with a bit of extra work, it sure isn't fun. As you're looking through distros, check their hardware compatibility pages (or test them out with their Live CDs) to see whether things like your Wi-Fi card, video card and sound are all compatible out of the box. If not, just know that you'll have to do a bit more work to get everything up and running when you first install. Image: Garrette.

Community Support

A big part of Linux is the community surrounding it, whether for troubleshooting, app support, or even good documentation. The larger the community surrounding a distro, the more likely you are to be able to get help, find documentation on a specific problem or piece of hardware and otherwise get information. This is what makes Ubuntu such a great beginner distro. Poke around the forums of your chosen distros and see which ones fit you well. Is the community helpful? Are there a large number of useful forum threads or documentation pages (like ones dealing with specific laptops? The better support you can get from the community, the easier your transition to that distro is going to be.

Distributions Every Linux User Should Try

Now that you know what makes a Linux distribution, you may be wondering where to start looking. DistroWatch is an incredible resource for those looking to branch out, but again, there are hundreds of distros out there and it can be pretty overwhelming. While we highly recommend exploring beyond our paltry list below, here are a few distributions that are incredibly popular and are great starting points for any search. Note that most distributions have variations that use different desktop environments, but we'll focus on the default environments for each here.

The Standard: Ubuntu

If you've tried Linux before -- and again, if you're reading this, you probably have -- there's a good chance you've tried Ubuntu. The original aim of Ubuntu was to make Linux easier for the average user and it did a pretty good job -- it's a great beginner's distribution. It's fairly simple to use, updates every six months and now contains its own Unity interface, which is specific to Ubuntu, featuring things like a dock instead of a taskbar, an App Store-like interface for its package manager, a dashboard for easy searching of the OS and more. Some people like it, lots of people hate it, but you can always bring back the classic GNOME interface, if you so choose.

Ubuntu comes with a pretty standard set of apps, including Firefox, Thunderbird, Empathy for instant messaging and Transmission for downloading torrents. It also has an incredibly large and helpful community, as well as great hardware support, so if you're looking for something as hassle-free as possible, Ubuntu isn't a bad place to start. Its popularity also means that it has loads of programs available in the repositories, or online as packaged DEB files for one-click installations. Rarely will you have to build a program from source.

For the Beginner: Linux Mint

Linux Mint is actually based off Ubuntu, but we thought to include it here because it's become even more popular with Ubuntu's shift toward the unpopular Unity interface. Mint aims to be as easy as possible for users unfamiliar with Linux: the installation is pain-free, the menus are familiar and easy to use and unlike other distros, it doesn't commit itself to providing only free and open source software -- that is, it comes with things like Adobe Flash, MP3 support and some proprietary hardware drivers pre-installed. In other distros, you usually have to download these separately. Its set of pre-installed apps is very similar to Ubuntu's (with a notable exception; Mint pre-installs Pidgin for instant messaging instead of Empathy -- a choice we agree with) and because it uses the same package management system as Ubuntu, you have a very wide range of programs available in the repositories or as DEB files. It is also completely community-driven, which means you have a pretty good source of support when you need help. If you've never used Linux before, we highly recommend Mint as your first distro.

For The Bleeding Edge User: Fedora

Fedora aims to be a bit more on the cutting edge of all its software. Updates come out every six months, just like Ubuntu and Mint, but they aren't supported for very long. It's expected that users update regularly and as soon as possible. Programs like Firefox will be updated as soon as Mozilla releases an update, unlike Ubuntu, which will usually wait to make Ubuntu-specific changes to the code and release things later on. This can result in a bit more instability, but is great for those that always want the latest and greatest software on their system. It also updated to the GNOME 3 Shell very quickly, and is the most popular Linux distribution currently using it. Fedora uses the somewhat slower but easier to use Yum package manager, instead of Ubuntu and Mint's APT, and while it doesn't have quite the software availability that the others do, you can still find most of what you need in the repositories or online in a single-click installer. Fedora also has great security and enterprise features, if you're looking to use Linux in a more professional environment. Fedora is definitely better for serious Linux users rather than tinkerers and hobbyists.

For the Cautious and Stable: Debian

Debian, in many ways, is the opposite of Fedora. Its goal is to be as stable and bug-free as possible, which it does very well -- but it means that your system is rarely up-to-date with the latest versions of software. New releases come out every one-three years and the development community can be a bit harsh for those uninitiated. However, if you're looking for something as stable as a rock and don't care about always having the latest version of a piece of software, Debian is for you. Debian also uses the same package management structure as Ubutnu and Mint, so it has more programs available than you can shake a stick at -- both in the repositories and online as DEB files. It also supports many processor architectures, which is great if you have a particularly old or offbeat build.

For the Tinkerer: OpenSUSE

OpenSUSE is a general-purpose Linux distribution that, while it has a bit of drama behind it concerning its parent company, has a very helpful community. Its main draw over other distributions is its level of configuration. KDE is the default desktop (which in my experience is one of the most easily configurable), though it lets you choose between KDE, GNOME, LXDE and XFCE during the installation, which is pretty cool. It also has a very nicely done system administration utility and package manager, known as YaST, as well as great documentation and (as previously stated) a good community behind it. It's worth noting, however, that KDE and OpenSUSE can be a bit more resource-heavy than other distros, so you'll want to make sure you have resources to spare before choosing it. This is not an ideal distribution for your netbook. If you're one of those people that likes having things just so, OpenSUSE is a good distro to try, as it gives you a lot of configuration options without the need to delve into the command line.

For the Diehard: Arch Linux

Arch Linux is special. Arch doesn't have very many of its own characteristics, as when you install it you're doing so from scratch. All you have when you install it is a command line, from which you build up your desktop environment, drivers, preferred applications and more. Essentially, you're creating your own super-customised distro. It can be as minimal or as feature-heavy as you want and while it takes a lot of work, the end result is fantastic (plus you'll learn heaps about how Linux works in the process). The great thing about Arch is that if anything ever goes wrong, you'll probably know why, because you're forced to deal with these things at a low level. This is especially good considering Arch's community doesn't have the reputation of being super helpful to newbies (though I've found them to be more than adequate).

Arch uses the incredibly easy and powerful Pacman package manager and is a rolling release, which means there are no "official" releases -- you're always installing the latest version of whatever packages are included, which makes it great for those on the super bleeding edge. Arch also contains the Arch User Repository (AUR), one of my favourite things in the entire Linux ecosystem. It essentially allows the community to create easily installable versions of any program, so even if it isn't in the official Arch repos, you can use an AUR helper to install all those programs as if they were normal packages in the repositories. For more information on how to install and use Arch, check out our guide on building a killer customised Arch Linux installation.

Obviously, these aren't the only Linux distributions out there. There are other popular ones like CentOS and Slackware, plus variations of all of the above like the LXDE-enabled Lubuntu (based off Ubuntu) or the super-minimal CrunchBang (based off Debian). Again, check out DistroWatch for more ideas and don't be afriad to test a number of distributions before you settle on one -- the more you test, the more likely you are to find the one that fits you perfectly.

Got your own favourite distro, or any other comments on how to pick the perfect one for you? Share them in the comments.


Comments

    No mention of Gentoo in the Diehard section? If you're going to customise it that much, then why not mention that you can go even further?

      For the even tougher nuts out there Gentoo, but alas its way too much screwing around these days, sorry but Arch rules over Gentoo these days. :)

    I'm a big arch fan but I've never fully converted because there's always SOMETHING that I can't quite get to work the way I want it to.

    Using Crunchbang at the moment and its very good. One day I'll commit to Arch but my linux box is always a laptop and that just makes it that little bit more difficult.

    Debian can be as cautious or as bleeding edge as you want it to be. It has three different levels for its software packages: stable, testing, and unstable. There's also an experimental package repository, if you want to use ultra bleeding edge software.

    Best thing of all, you can pick and choose from all of them. For example, you can install a testing base, and then install the xorg package from unstable. While "testing" and "unstable" sound rather fragile, I've found they're as solid as other release distributions. If you do have issues, then you can always revert to a package from a lower, more tried and tested level.

    Ubuntu is still better for beginners, since they've put so much effort into their interface, but Debian will suit just about any other type of linux user. Except maybe the compile everything from source crowd; Debian can do it, but it's not designed for it like Gentoo or Arch.

    I was expecting a Gentoo mention somewhere after Arch... maybe a "For the Masochist" section

    The large number of Linux distributions is not the problem most people make out it is. And personally I have no idea why so many people focus on how many distributions there are, in the negative way they do.

    I've been using Linux based operating syustems for 12 years now (since 200), and in that time I've used Red Hat, lycoris, Mandrake/Mandriva, Ubuntu, Dream Linux, Linux Mint. At no time was it ever a problem, not even when I first started using Linux... I simply looked around for something that looked like a good general purpose distribution and purchased, yes purchased, a copy of Lycoris. It was ok, Red hwas a bust, adn I settled on Mandrake, more recently I tried Ubuntu and several variants, and settled on Linux Mint.

    Given that it's so easy to try a linux based operating system, even back in 2000 it wasn't all that onerous, and there are no licence fees to pay, it's really quite a trivial exercise to download a few desirable looking Linux distributions and try them out in liveCD mode, and install the one you prefer. Not that installing the wrong one is such a big deal, you can simply install another or install a different desktop/ collection of applications and change the one you chose to your preferences.

    so the penguin in the pic is male then!

    i don't know if the peguin is male i thought is was a girl cuz of all the rose leaves and what not ...

    I've recently taken up learning to code and one of the fisrt things I was told is to get a Mac or switch to Linux.
    So of course I don't have $1,000 to get a mac so I opted for the latter.
    I grabbed the Ubuntu flavor to start with but I'm thinking of trying out Fedora as I heard that one os the best for coding.
    Coding, along with reading and watching tutorials, is the only thing I use my comp for now (some might say I've become obsessed lol) so would Fedora be the right choice for me? I just want something that's fast and will get the job done.
    If it matters I am learning Python, Ruby, and JavaScript.

Join the discussion!