Keep in mind that this list serves the purpose to show what needs to be fixed in Linux rather than to find faults in it.

This list desperately needs to be reorganized because some of the problems mentioned here are crucial and some are not. There's a great chance that you, as a user, won't ever encounter any of them (if you have the right hardware, never mess with your system and use quite a limited set of software from your distro exclusively ).

Some of Fedora developers proposed to change this distro so it provides stable APIs/ABIs and avoids regressions if possible.

Ubuntu developers decided to push Ubuntu as a viable gaming platform and they identified the topics which need to be addressed in order to achieve this goal. Uncannily the list , they've come up with, matches the list, you can read below, almost verbatim.

Miguel de Icaza, the creator of Gnome and Mono, opined about Linux problems in a similar way, here's his opinion where he reiterates a lot of things mentioned below. He stopped using Linux in 2012, saying about his Mac the following, " Computing-wise that three week vacation turned out to be very relaxing. Machine would suspend and resume without problem, Wi-Fi just worked, audio did not stop working, I spend three weeks without having to recompile the kernel to adjust this or that, nor fighting the video drivers, or deal with the bizarre and random speed degradation that my ThinkPad suffered ", highlighting problematic areas in Linux. Recently Linus Torvalds expressed his utter disappointment with the state of Linux on the desktop.

Probably you've heard many times that Android thus Linux is conquering the entire world since it's running on the majority of smart phones (which are indeed little specialized computers but not desktops ). However there are two important things to keep in mind - firstly, Android is not Linux (besides have you seen anyone running Android on their desktop or laptop?). Android contains the only Linux component - the kernel (moreover, it's a fixed old version (3.0.x, 3.4.x or 3.10.x as for 2016) which is maintained and supported solely by Google). Secondly, Android is not a desktop OS, it's an OS for mobile phones, tablets and other touch screen devices. So, this article is not about Android, it's about a horde of Linux distributions and Open Source Software included by these distributions (called "distro" below).

I want to make one thing crystal clear - Windows , in some regards, is even worse than Linux and it's definitely not ready for the desktop either . Off the top of my head I want to name the following quite devastating issues with Windows: • devastating Windows rot , • no enforced file system and registry hierarchy (I have yet to find a single serious application which can uninstall itself cleanly and fully), • svchost.exe, • no true safe mode, • no clean state, • the user as a system administrator (thus viruses/​malware - most users don't and won't understand UAC warnings), • no good packaging mechanism (MSI is a fragile abomination), • no system wide update mechanism (which includes third party software), • Windows is extremely difficult to debug, • Windows boot problems are often fatal and unsolvable unless you reinstall from scratch, • Windows is hardware dependent (especially when running from UEFI), • Windows updates are terribly unreliable and they also waste disk space, • there's no way to cleanly upgrade your system (there will be thousands of leftovers), etc.

This is not a Windows vs. Linux comparison, however sometimes you'll find comparisons with Windows or Mac OS as a point of reference (after all, their market penetration is in an order of magnitude higher). Most issues listed below are technical by nature, however some of them are "political" (it's not my word - it's what other people say) - for instance when companies refuse to release data sheets or release incomplete data sheets for hardware, thus Linux users don't get all the features or drivers have bugs almost no one in the Linux community can resolve.

Again, let me reiterate it, this article is primarily about Linux distributions , however many issues listed below affect the Linux kernel as well.

In this regularly updated article, which is without doubt the most comprehensive list of Linux distributions' problems on the entire Internet, we only discuss their main problems and deficiencies (which may be the reason why some people say Linux distros are not ready for the desktop) while everyone should keep in mind that there are areas where Linux has excelled other OSes: excellent package management, multiple platforms and architectures support out of the box, usually excellent stability, no widely circulating viruses or malware, complete system reinstallation is almost never required, besides Linux is extremely customizable, easily scripted and it's free as in beer.

(For those who hate reading long texts, there's a TL;DR version below). So Linux sucks because ...

Year 2015 welcomed us with 134 vulnerabilities in one package alone: WebKitGTK+ WSA-2015-0002 . More eyes, less vulnerabilities you say, right?

Year 2014 was the most damning in regard to Linux security: critical remotely exploitable vulnerabilities were found in many basic Open Source projects, like bash ( shellshock ), OpenSSL ( heartbleed ), kernel and others. So much for "everyone can read the code thus it's invulnerable". In the beginning of 2015 a new critical remotely exploitable vulnerability was found, called GHOST .

Here's a full quote by Torvalds himself: "So I personally consider security bugs to be just "normal bugs". I don't cover them up, but I also don't have any reason what-so-ever to think it's a good idea to track them and announce them as something special."

A lot of people who are new to Linux or those who use a very tiny subset of applications are quick to disregard the entire list saying things like, "Audio in Linux works just fine me." or "I've never had any troubles with video in Linux." Guess what, there are thousands of users who have immense problems because they have a different set of hardware or software. Do yourself a favour - come and visit Ubuntu or Linux.com forums and count the number of threads which contain "I have erased PulseAudio and only now audio works for me" or "I have finally discovered I can use nouveau instead of NVIDIA binary drivers (or vice versa) and my problems are gone."

There's another important thing critics fail to understand. If something doesn't work in Linux, people will not care whose fault it is, they will automatically and rightly assume it's Linux' fault. For the average Joe Linux is just another operating system, he or she doesn't care if a particular company ABC chose not to support Linux or not to release fully functional drivers for Linux - their hard earned hardware just doesn't work, i.e. Linux doesn't work. People won't care if Skype crashes every five minutes under some circumstances - even though in reality Skype is an awful piece of software which has tonnes of glitches and sometimes crashes even under Windows and MacOS.

I want to answer a common misconception that support for older hardware in Linux is a lot better than in Windows. It's partly true but it's also false. For instance neither nouveau nor proprietary NVIDIA drivers have good support for older NVIDIA GPUs. Nouveau's OpenGL acceleration speed is lacking, NVIDIA's blob doesn't support many crucial features found in Xrandr or features required for proper acceleration of modern Linux GUI s (like Gnome 3 or KDE4). In case your old hardware is magically still supported, Linux drivers almost always offer only a small subset of features found in Windows drivers, so saying that Linux hardware support is better, just because you don't have to spend 20 minutes installing drivers, is unfair at best.

Some comments just astonish me: "This was terrible. I mean, it's full of half-truths and opinions. NVIDIA Optimus (Then don't use it, go with Intel or something else)." No shit, sir! I've bought my laptop to enjoy games in Wine/dualboot and you dare tell me I shouldn't have bought in the first place? I kindly suggest you not to impose your opinion on other people who can actually get pleasure from playing high quality games. Saying that SSHFS is a replacement for Windows File Sharing is the most ridiculous thing that I've heard in my entire life.

It's worth noting that the most vocal participants of the Open Source community are extremely bitchy and overly idealistic people peremptorily requiring everything to be open source and free or it has no right to exist at all in Linux. With an attitude like this, it's no surprise that a lot of companies completely disregard and shun the Linux desktop. Linus Torvalds once talked about this: There are "extremists" in the free software world, but that's one major reason why I don't call what I do "free software" any more. I don't want to be associated with the people for whom it's about exclusion and hatred.

Most importantly this list is not an opinion. Almost every listed point has links to appropriate articles, threads and discussions centered on it, proving that I haven't pulled it out of my < expletive >. And please always check your "facts".

I'm not really sorry for citing slashdot comments as a proof of what I'm writing here about, since I have one very strong justification for doing that - /. crowd is very large, it mostly consists of smart people, IT specialists, scientists, etc. - and if a comment over there gets promoted to +5 insightful it usually* means that many people share the same opinion or have the same experience. BTW, I would be very glad if someone submitted this article to slashdot.org (I've done it once but my submission was rejected). * I previously said "certainly" instead of "usually" but after this text was called "hysterical nonsense" (a rebuttal is here) I decided not to use this word any more.

If anyone's interested I can publish a list of measures required to make Linux edible, usable, pleasant and attractive for both users and developers but savvy readers have probably deduced everything on their own :-).

On a positive note

If you get an impression that Linux sucks - you are largely wrong. For a limited use Linux indeed shines as a desktop OS - when you run it you can be sure that you are malware free. You can safely install and uninstall software without fearing that your system will break up. At the same time innate Windows problems (listed at the beginning of the article) are almost impossible to fix unless Microsoft starts from scratch - Linux problems are indeed approachable.

Also there are several projects underway which are made to simplify, modernize and unify the Linux desktop. They are systemd, Wayland, file system unification first proposed and implemented by Fedora, and others. Unfortunately no one is working towards stabilizing Linux so the only alternative to Windows in the Linux world is Red Hat Enterprise Linux and its derivatives (CentOS and Scientific Linux).

Many top tier 3D game engines now support Linux natively: CryEngine, Unreal Engine 4, Unity Engine, Source Engine 2.0 and others.

Valve Software released Steam for Linux (alas, it only works well under SteamOS and it's almost unusable under modern Linux distros) and ported the Source engine for Linux and they are developing a Steam gaming machine which is based on Linux. Valve's efforts have resulted in several AAA game titles having been made available natively for Linux, e.g. Metro Last Light. They also promised to port all then current AAA game titles from Windows to Linux in 2014. A considerable number of new games will be ported to Linux/SteamOS in in 2015.

NVIDIA made their drivers more compatible with bumblebee, however NVIDIA themselves don't want to support Optimus under Linux - maybe because X.org/kernel architectures are not very suitable for that. Also NVIDIA started to provide certain very limited documentation for their GPUs.

Linus Torvalds believes Linux APIs have recently become much more stable - however I don't share his optimism ;).

Ubuntu developers listened to me and created a new unified packaging format. More on it here and here. Fedora developers decided to follow Ubuntu's lead and they're contemplating making the installation of 3d party non-free software easy and trouble free.

The Linux Foundation formed a new initiative to support critical Open Source Projects.

An application level firewall named Douane has been graciously donated to the Linux community. Thanks a lot to its author!

With recent Mesa 11 release in September 2015 OpenGL 4.1 has finally become reality under Linux. Hopefully this will entice game publishers to start porting more games for Linux.