What's Been the Best Linux Distro of 2014?
An anonymous reader writes With 23% of the year remaining, Linux Voice has donned flameproof clothing to subjectively examine what it feels have been the best distros of the year so far, including choices for beginners, desktop fashionistas and performance fetishists, before revealing a surprising overall winner.
Minimal install footprint meaning no bloat. Install only what you choose plus no systemd bullshit.
Only the State obtains its revenue by coercion. - Murray Rothbard
Mint has become the leader for home/desktop users. The Ubuntu base lends stability compatibility, while the more complete out-of-the-box experience and homegrown tools Mint offers make it a no-brainer (although I personally use Mint's Debian-based distro). For enterprise use I'd probably stick with RHEL, and perhaps CentOS for in between needs, but Mint just works so well that it has become a truly viable Windows replacement for many tinkerers and average, average people, and those who prefer not to support MS for whatever reason.
This is a hacked account, for which the owner can not be held responsible.
FreeBSD is not Linux though.
This is a hacked account, for which the owner can not be held responsible.
Enough said in the subject.
1. Gentoo....... As a software developer the ability to freeze certain packages without giving up critical updates is a game changer! Nobody else seems to let me do this without some binary C/C++ incompatibility. For that I love Gentoo. I also do weird things like rebuild the linux kernel using my ICC enterprise license along with firefox/chromium/ffmpeg. ICC compared to GCC is just blazing fast. Nearly 360% speed increases in some areas. No other distro makes something that crazy as easy as Gentoo does. It's a real hackers delight. (not the new-age incorrect interpretation of hacker)
Runners up
2. Slackware
3. Debian
I used Gentoo a little over a decade ago, and it was awesome for exposing me to how Linux worked.
Arch today reminds me of that. Problem is, I don't have the time or patience to sit around fixing my Linux machine and playing Mr. Package Manager like I did when I was 17. Now I need something that just works.
I tried Arch about a year ago and was quickly turned off: the ISO that I downloaded wouldn't boot. Turns out they were shipping a broken kernel that week. No big deal, just hunt down the flag I needed to pass to the kernel, got it booted and installed. Configured, usable, a week later, do some updates, breaks something minor. OK, I can fix that. Wash, rinse repeat. I gave up, went back to Ubuntu.
Arch does have great documentation and good forums. Both the documentation and the forms for Ubuntu are worse than useless.
Yeah, I know, Ubuntu is too popular to be cool. But it has the right mix of recent packages (I used CentOS 6 at work for a while and was frustrated by how old everything was; installing package foo requires bar-2.4, but CentOS ships with bar-1.9.8 with 18 dependencies on that particular bar, so if you want foo you're stuck playing Mr. Package Manager) and support (I only go for the LTS releases). If a package I need isn't in Ubuntu's repositories (or the one that is there is too old), it's a good bet that there's a legitimate Ubuntu builds provided by the author.
Anyone using Arch in production? What's your rationale? How do you keep it from breaking?
If you're serious and doing serious business, RHEL is the only acronym you will ever need.
If you believe you're serious, but happen to be poor, you've got CentOS.
If you're one of those neurotic Linux on the Desktop folks, Mint is where it's at.
If you're completely insane and are sexually aroused by compiler flags, you want Gentoo.
If you're a crochety old bastard who writes out config files via echo and redirection, Slackware is your drug of choice.
This is it! The year of FreeBSD on the desktop!
"But what makes Arch our winner is this: for the large part, its information applies to other distros."
That is very funny of them to say, since I'm not sure how that makes Arch itself a "better" distro than the competition (and since Ubuntu and Debian help apply to many many distros) though something to remember when you get tired of Arch and switch to Ubuntu or Mint. That said, the Mint forums have been an excellent resource for me. If I have a problem or can't figure something out, I first Google it, then Google it with "Ubuntu" as a search term, then if necessary I can ask a question in the Mint forums and generally have it answered within 24 hours. I have precisely zero intention of switching to Arch, but maybe I'll try their wikis and docs next time I have a problem.
This is a hacked account, for which the owner can not be held responsible.
Being a former dev and pro for SuSE, going to Debian for years and since 3 years switched to Arch I have to say, there is no documentation better in linux land than the one you can find at the Arch Wiki. It really is an example of how great docs should be. Nothing wrong with mint, ubuntu, slack, redhat and by all means, pick one that you like. I would not have picked arch as the best, since it's geared towards to technical crowd that knows where and how to fix things, but they are right when they say that the Arch documentation stands out alone. Openbsd's might just be better. Might.
Only from people with a clue about UNIX technology. Even among Linux users, that is a minority. I will not touch Arch with a 10 feet pole due to systemd. And no, I do not hate systemd, I just think it is a far substandard product. What I hate is that it is being made very difficult to avoid in a culture that prides itself on "choice".
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
FreeBSD is not Linux though.
Which isn't really much of a problem. Many, if not most, Linux users just want Unix functionality and don't care about the Linux brand itself, don't care about the GPL and its politics, etc. Hence the popularity of Mac OS X for many *nix users. It just so happens that for commodity PC hardware Linux is one of the more convenient *nix offerings.
Linux distribution? I'd go with Cyanogenmod.
Debian
Climate Progress - Hell and High Water
systemd is the wave of the future. Or at least something similar to systemd that they'll probably hate just as much.
I haven't seen this much hate since OOP started getting popular and old school devs were dragged into it kicking and screaming. But guess what, OOP was the wave of the future.
Considering where the OOP-For-Everything crowd got us, and how long it took us to recover from the fact that it was the hammer for every nail for far too long, considering that we're finally emerging into a sane world where OOP has its place, as one approach among many....
... I'd say you're right about systemd:
It's being touted as The One True Way. Its detractors are ridiculed as hidebound old neckbeards[*] who don't know any way of doing things but their own. Its adherents are clever, antisocial alphas whose faith in their own intelligence is far too complete, and who don't know the difference between an argument and a quarrel.
Yep, it is OOP vs The World all over again. Dog help us all.
--------
[*] Seriously: I will punch the first person who uses that term in my presence.
Crumb's Corollary: Never bring a knife to a bun fight.
If you are into system security then check this one out. Security by hardware isolation is very hard to crack. Even the NIC and its kernel drivers live in its own VM and protects your system via IOMMU.
The Systemd distribution (or GNU/Systemd/Linux as it is now called) deserves the Man of the Year award this year, because it has unified so many stand alone Unix style components into one unified quality program. By unifying everything into one program, we have eliminated redundant code, bugs, and rallied all of the Linux community behind the one user-space kernel. We can continue this trend of streamlining and eliminating waste, by merging in a compositor, a browser engine. We believe that molecularity will only allow the user to be confused with choices and that good incremental development is like making good stew. Throw everything in.
The Ubuntu upgrade encountered DB/2's configuration and startup scripts in the /etc tree, didn't know what to do with them, had updated half the packages on the system, barfed, and left the system with a non-responsive command prompt. As half the packages were for one release and half for another, the system would no longer even boot. Without the ability to boot even into single user mode, it was clearly impossible to recover the system so I switched to Debian.
I don't know that Debian is immune to the problem, but I've heard far less people complain about failed Debian updates than Ubuntu updates.
Having software that was locally installed, built from source, or otherwise not part of the system software database should not cause an upgrade to crash. At worst it should warn you that there are unrecognized files present and that you'll have to update them manually.
This is the only time in 30+ years of working with computers that I've seen an update crash because it ran into something it didn't recognize. I guess that's "hats off" to Ubuntu for another first. :P
I do not fail; I succeed at finding out what does not work.
I like Arch and its minimalistic DIY philosophy, but that's despite the fact that it uses systemd, not because of it. As a matter of fact, if they got rid of systemd it would be close to my perfect distro.
At the end of the day, an init system only matters so much though. Once your system is booted, and your running your software, you don't see it anymore. The times that I did have to deal with systemd, it was a damn pain in the ass though.
Linux supports snake handling in userspace, if your system has serpentd support (if you see /proc/serpents yours probably does); but it does not "do snake handling on the side". Asshole.
Honest question that I haven't been able to find an answer to...
Is there a desktop Linux distro that will play DVDs "out of the box"? Specifically, you stick it in the drive and it starts playing.
I've got an olde Pentium 4 system that's currently running Windows 7, and I wanted to put Linux on it... the main use case for this machine is playing DVDs during workouts.
- chrish
The main difference is that FreeBSD users know what Google is and how to use it.
I hate printers.
This is just my personal opinion and im not saying this is the correct answer. This is my answer... Best distro overall of 2014? Arch Linux. The distro's affinity for clean and clear scripts on top of the way you build your system never ceases to teach me new things all the time. Best distro for the new user of 2014? Mint. Clean and simple package management. Best distro for business servers of 2014? CentOS 7. It is very well polished, rock stable, and dead simple Windows Active Directory integration. I lub Linux =B
It's being touted as The One True Way.
huh... no. It's just reported that it's a useful piece of code which actually solve lots of problems.
it's being adopted in lots of place because of this, even in distro that don't necessarily depend on Gnome.
Nobody is trying to force you to use it. You're free to use something else.
You'll just be missing about tons of features which are really useful and come for free with systemd.
But if you don't want it. Fine. Keep using your kludged together scripts. Or move to something else (openrc, the spiritual successor of sysvinit done in a modern way. Or anything else).
Simply accept the fact that systemd is useful enough that tons of distro are picking it up.
The problem is that, instead of just doing that (use something else), each time something is announced about the systemd project (not even necessarily the systemd daemon running as pid 1) there are tons of trolls comming and screaming "systemd cancer!" and not doing much.
Whereas the correct reaction would be just "meh.." and keep on using whatever they like. And perhaps, if they are unhappy that most of the distro are moving toward systemd, they should start a new spin of Debian/Fedora/Ubuntu based on some other alternative init system.
But no, all you here is only whining and very few actual work (like systembsd or uselessd, or adapting launchd so it can serve as systemd replacement, etc)
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Systemd gives me nothing I need. So tell me again why I need it or should want it.
Then don't. Stick instead to whatever pleases you. It's not a problem per se.
But accept that lots of other people DO find systemd useful enough to be worth the switching.
Including distros that aren't entire organised around Gnome.
If you don't like this situation, either move to a distro like Gentoo where that is still an option.
Or gather enough people and create your own spin of Fedora/Debian/Ubuntu (whichever is your preferred starting point) but organised around your preferred init system (with blackjack! and hookers!)
The problem is that, instead of doing this, most of the time, you only hear trolls spouting "Systemd is cancer!" and not doing much.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Whenever I tried other distros, I'd always go back to Debian in the end, since its package management seems a lot saner than most.
NixOS is refreshing, since it package/configuration management seems to be an improvement over Debian's. It's still a little rough around the edges, but perfectly usable (as long as it loads emacs, conkeror and xmonad, it's usable)
Few random exemple where systemd helps:
- if you look at it probably 99% of all service on linux are just about starting an executable, with a few parameters. /etc/init.d.
-- with systemd, you do exactly that: write a service file that gives the name of the executable to run. and that's it. done. much more easy to maintain
-- with sysvinit, each distro has it's own local variant of boiler code that need to be copy-pasted around, and each service needs a whole script in
Whole script with duplicated lines vs simple text file.
- become a daemon requires some work.
-- either the developper must do a whole dance inside the code (double fork, sanitizing environment like closing descriptors, etc.)
-- or you need to take care of it from the outside (startproc, etc.)
systemd (like also daemontools and several other such "successors of sysvinit") can automatically take care of that. just run the soft in immediate mode, systemd takes care of the daemonisation/sanitization. In fact you can easily run as a service things like scripts.
So you want to have a daemon that is basically just a gawk 1 liner ? feel free.
automatic handling of modern kernel features. Cgroups, brokering capabilities, etc. Classical sysvinit has no concept of these (of course, they didn't exist back then).
- You would need either more kludge in you init.d scripts
- or use a modern system that can take care of that. systemd is one of them.
very light-weight container creation: other parts of systemd take care of state-less systems (basically you only need /usr for a system to work, /etc and /var can be automatically rebuilt with default settings from /usr if they are empty), various daemons under the systemd project can take care of the basic initialisation step (you don't need a full fledged dhcp server and client/pair compatible with every possible corner situation and supporting every option under the sun when all you need is just quickly hand out an IP to a LXC container - similarily to how one would use dnsmasq, systemd has its own micro dhcp implementation).
that makes possible to use LXC-style container (and thus much higher level of isolation) for anything that you don't trust and would like to run in its own container.
You don't trust skype, specially since microsoft did take it over? LXC container combined with SELinux and AppArmor (which LXC supports) would be a way to isolate it. Systemd (not the pid1 daemon, the whole project) is a project that can help generating such containers on the fly without any administrative intervention nor any configuration required.
You might not need these. And you're free to stick to old sysvinit if you want. Or at least move to a more modern spiritual successor of this (openrc)
(Gentoo give you choice of system. Or you could gather people and start "Rubuntu, an openRC spin of Ubuntu")
Or you might want these features. And systemd is then a nice single stop for all this plus more. (Though you could find similar daemon giving similar functions spread over 20 different projects).
It's a bit like the situation with TeX (nice single stop to get a ton of filters for text processing and typesetting) Ghostscript (printing) Pnmtools or ImageMagick (single suite of tighly integrated image filters/processing), etc.
Systemd is a similar suite containing all the necessary building blocks for taking care of system initialisation/process starting, etc.
Systemd has tons of useful funtionality, and thus lots of distribution decided to pick that one up as an openrc successor.
(Including distributions not depending on gnome)
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Tool for the job. OOP has its place in programming as does procedural. The same can be said of systemd. My desktop system I'm probably not going to care when the upgrade forces me into systemd since it's not a system that I need to be concerned about long term uptime and stability. My servers on the other hand, they're a completely different story. I've got another year or so on my LTS, and in that time I intend on putting systemd through its paces on a test machine to force it to fail, and then observe the ways in which it fails. If it does what my hypothesis says it will, based on its generally monolithic design strategy, then I will be looking for a distribution that hasn't drunk the systemd Kool-Aid for my next LTS. If it surprises me and performs well during the fail testing, then I will consider using it.
I believe that this is where the core hatred for systemd is really coming from. It's not so much that it's a bad init system or that people are resistant to change, though the latter is certainly a factor with good reason. It's the fact that Distributions are forcing this change on System Administrators and removing the choice for the Sysadmins to continue with a technology that they have working and have learned the core of how it works or have to install and learn a whole new system that they may not know their way around yet. Has RH or Debian offered the old System V init package as an alternative on their default install? Not that I've seen. This is where the ire is coming from. The defense for systemd is "if you don't like it, it's open source; change it in the source." The people that say this don't realize that in a corporate production environment, this is rarely a feasible argument. Sysadmins are not usually programmers, and these operating system distributions -- Redhat, CentOS, Debian, etc -- have just sold them out and made more work for them to test the ways systemd can fail on their systems and reanalyze their disaster recovery plans to account for this new anomaly. Or management may just decide that they need to go get a service contract with Microsoft for their needs and dump Linux altogether as they may deem the MS option as cheaper and easier to maintain long term.
Fast blanket changes to new technologies by the distributions without accounting for the slower moving but gigantic enterprise user base without offering the option to keep their current technologies was probably one of the dumbest moves they could have done. Why did most Enterprise that use windows software keep on XP until Windows 7 came out, skipping Vista? Why am I using a windows 7 desktop at my employer right now when Windows 8.1 is out there and mature enough for the next phase of OS to have been announced? For the same reason you're not going to get Enterprise customers jumping on board with the next release of the Linux OS they're using...if they're using one of those that is dropping System V.
Has freebsd been the best Linux distro of 2014?
By the end of 2014 it will be, thanks to systemd.
Gentoo seemed to figure out init script dependency.
I'm open to changing init scripts, but do we have to change everything else too? Like binary logging and needing an interface to access those logs instead of just tailing/grepping them. (Though I think systemd does support duplicate logging to certain syslogs.)