-14
Major Linux Problems (web.archive.org)
submitted 1 day ago* (last edited 1 day ago) by Uschteinheim@lemmy.world to c/linuxsucks@lemmy.world

The original site hosting this article about Linux sucking is down, so I took the link from the Wayback Machine.

Source © 2009-2023 Artem S. Tashkinov [(https://web.archive.org/web/20241212104642/https://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html)]

Summary

No stability, bugs, regressions, regressions and regressions: There's a large number of regressions (both in the kernel and in user space applications) when things which used to work break inexplicably; some of the regressions can even lead to data loss. Basically there is no quality control (QA/QC) nor regression testing in most Open Source projects (including the kernel) - Microsoft, for instance, reports that Windows 8 received 1,240,000,000 hours of testing whereas new kernel releases get, I guess, under 10,000 hours of testing - and every Linux kernel release is comparable to a new Windows version. Serious bugs which impede normal workflow can take years to be resolved. A lot of crucial hardware (e.g. GPUs, Wi-Fi cards) isn't properly supported. Often regressions are introduced in "stable" x.y.Z kernel releases even though Linux developers insist such releases must be upgraded to immidiately.
Hardware issues: Under Linux many devices and device features are still poorly supported or not supported at all. Some hardware (e.g. Broadcom Wi-Fi adapters) cannot be used unless you already have a working Internet connection. New hardware often becomes supported months after introduction. Specialized software to manage devices like printers, scanners, cameras, webcams, audio players, smartphones, etc. almost always just doesn't exist - so you won't be able to fully control your new gadgets and update firmware. Linux graphics support is a big bloody mess because kernel/X.org APIs/ABIs constantly change and NVIDIA/Broadcom/etc. companies don't want to allocate extra resources and waste their money just to keep up with an insane rate of changes in the Open Source software.
The lack of standardization, fragmentation, unwarranted & excessive variety, as well as no common direction or vision among different distros: Too many Linux distributions with incompatible and dissimilar configurations, packaging systems and incompatible libraries. Different distros employ totally different desktop environments, different graphical and console applications for configuring your computer settings. E.g. Debian-based distros oblige you to use the strictly text based `dpkg-reconfigure` utility for certain system-related maintenance tasks.
The lack of cooperation between open source developers, and internal wars: There's no central body to organize the development of different parts of the open source stack which often leads to a situation where one project introduces changes which break other projects (this problem is also reflected in "Unstable APIs/ABIs" below). Even though the Open Source movement lacks manpower, different Linux distros find enough resources to fork projects (Gentoo developers are going to develop a udev alternative; a discord in ffmpeg which led to the emergence of libav; a situation around OpenOffice/LibreOffice; a new X.org/Wayland alternative - Mir) and to use their own solutions.
A lot of rapid changes: Most Linux distros have very short upgrade/release cycles (as short as six months in some cases, or e.g. Arch which is a rolling distro, or Fedora which gets updated every six months), thus you are constantly bombarded with changes you don't expect or don't want. LTS (long term support) distros are in most cases unsuitable for the desktop user due to the policy of preserving application versions (and usually there's no officially approved way to install bleeding edge applications - please, don't remind me of PPAs and backports - these hacks are not officially supported, nor guaranteed to work). Another show-stopping problem for LTS distros is that LTS kernels often do not support new hardware.
Unstable APIs/ABIs & the lack of real compatibility: It's very difficult to use old open and closed source software in new distros (in many cases it becomes impossible due to changes in core Linux components like kernel, GCC or glibc). Almost non-existent backwards compatibility makes it incredibly difficult and costly to create closed source applications for Linux distros. Open Source software which doesn't have active developers or maintainers gets simply dropped if its dependencies cannot be satisfied because older libraries have become obsolete and they are no longer available. For this reason for instance a lot of KDE3/Qt3 applications are not available in modern Linux distros even though alternatives do not exist. Developing drivers out of the main Linux kernel tree is an excruciating and expensive chore. There's no WinSxS equivalent for Linux - thus there's no simple way to install conflicting libraries. In 2015 Debian dropped support for Linux Standard Base (LSB). Viva, incompatibility!
Software issues: Not that many native games (mostly Indies) and few native AAA games (Valve's efforts and collaboration with games developers have resulted in many recent games being released for Linux, however every year thousands of titles are still released for Windows exclusively*. More than 98% of existing and upcoming AAA titles are still unavailable in Linux). No familiar Windows software, no Microsoft Office (LibreOffice still has major troubles correctly opening Microsoft Office produced documents), no native CIFS (simple to configure and use, as well as password protected and encrypted network file sharing) equivalent, no Active Directory or its featurewise equivalent.
Money, enthusiasm, motivation and responsibility: I predicted years ago that FOSS developers would start drifting away from the platform as FOSS is no longer a playground, it requires substantial effort and time, i.e. the fun is over, developers want real money to get the really hard work done. FOSS development, which lacks financial backing, shows its fatigue and disillusionment. The FOSS platform after all requires financially motivated developers as underfunded projects start to wane and critical bugs stay open for years. One could say "Good riddance", but the problem is that oftentimes those dying projects have no alternatives or similarly-featured successors. Also, open source developers are often keen to rewrite applications instead of attending to old bugs.
No polish, no consistency and no HIG adherence (even KDE developers admit it).
Various Linux components are loosely connected vs. other desktop operating systems like Windows and Mac OS X which means the same tasks running on Linux will consume quite a lot more energy (power) and as a result laptop users running Linux have a worse battery life. Here are some examples from a normal daily life: editing documents, listening to music, watching YouTube videos, or even playing games. Another example will be a simple task of desktop rendering: whereas Windows uses GPU acceleration and scheduling for many tasks related to rendering the image on the screen, Linux usually uses none.

This article is bollocks! Linux works for me/for my grandpa/for my aunt/etc.

Hey, I love when people are saying this, however here's a list of Linux problems which affect pretty much every Linux user.

Out of the box neither Mozilla Firefox nor Google Chrome use video decoding and output acceleration in Linux (which is a hell to set up in many cases), thus youtube clips will drain your laptop battery a lot faster than e.g. in Windows. Addendum: in 2022 hardware video decoding acceleration can be manually enabled in Firefox and Google Chromium (not Google Chrome) for Intel and AMD users with appropriate hardware.
Keyboard shortcut handling for people using local keyboard layouts is broken (this bug is now 16 years old). Not everyone lives in English-speaking countries. This doesn't affect Wayland but Wayland has its own share of critical usability issues.
Keyboard handling in X.org is broken by design - when you have a pop-up or an open menu, global keyboard shortcuts/keybindings don't (GTK) work (QT). This doesn't affect Wayland.
There's no easy way to use software which is not offered by your distro repositories, especially the software which is available only as sources. For the average Joe, who's not an IT specialist, there's no way at all.
You don't play games, do you? Linux still has very few native AAA games: for the past three years no new AAA titles have been made available. Most Linux games on Steam are Indies. To be fair you can now run thousands of Windows games through DirectX to Vulkan/OpenGL translation using DXVK however it's not perfect and anti-cheat protection usually doesn't work in Linux. People using Linux have been banned for playing multi-user Windows games because under Linux it's near impossible to verify that your environment hasn't been tampered with.
Microsoft Office is not available for Linux. LibreOffice often has major troubles properly opening, rendering or saving documents created in Microsoft Office (alas, it's a standard in the business world). Besides, LibreOffice has a drastically different user interface and many features work differently. Also native Windows fonts are not available in Linux which often leads to formatting issues.
Several crucial Windows applications are not available under Linux: Quicken, Adobe authoring products (Photoshop, Audition, etc.), Corel authoring products (CorelDraw and others), Autodesk software (3ds Max, Autocad, etc.), serious BluRay/DVD authoring products, professional audio applications (CuBase, SoundForge, etc.).
In 2023 there's still no alternative to Windows Network File Sharing (network file sharing that is easily configurable, discoverable, encrypted and password protected). NFS and SSHFS are two lousy totally user-unfriendly alternatives. SAMBA is there but under many desktop environments there's no simple GUI to configure it.
Linux doesn't have a reliably working hassle-free fast native (directly mountable via the kernel; FUSE doesn't cut it) MTP implementation. In order to work with your MTP devices, like ... Linux based Android phones you'd better use ... Windows or MacOS X. Android-File-Transfer-Linux works near perfectly but it's not included out of the box by most distros.
Too many things in Linux require manual configuration using text files: NVIDIA Optimus switchable graphics, custom display refresh rates, multiseat setups, USB 3G/LTE/4G modems, various daemons' configuration, and advanced audio setups to name a few.
Linux is secure UEFI boot mode unfriendly, if you're going to use any out of mainline tree drivers, e.g. NVIDIA, VirtualBox, VMWare, proprietary RAID, new Wi-Fi adapters, etc. etc. etc. This is a really bad situation which no Linux distro wants to address.
A personal nitpick which might be very relevant nowadays: under XFCE/Gnome/KDE there's no way to monitor your BlueTooth devices battery level on screen at all times (e.g. using a systray applet). There are scripts like this but they are inaccessible for most people out there as they require console kung-fu and they may stop working at any time.

Yeah, let's consider Linux an OS ready for the desktop :-).

Applications and features sorely missing in Linux

Here I don't even want to talk about Microsoft Office or pretty much all AAA games which are missing in Linux, I want to talk about crucial basic features of the desktop OS.

Task Manager alternative: all task managers in Linux completely suck. The Windows Task Manager is capable of showing CPU/RAM/GPU/Disk utilization for each process and process group which allows to easily identify which applications slow your system down. It also has very nice overviews of CPU/RAM/GPU/IO/Disk activities which again are sorely missing in all Linux Task Managers. What's worse by default Linux does not aggregate performance stats of a process and its children (which is extremely important for web browsers) which makes understanding of how much resources your applications consume near impossible. It's possible to do that programmatically via cgroups but absolute most users will never do that. There's an app which tries to implement these features called "System Monitoring Center" but it's not installed by default in any major distros, secondly it's written in Python which is not the best language for such applications because it itself creates significant CPU/RAM pressure.
Device Manager alternative: back when Corel Linux existed around 2000 it had a nifty device manager only no one has ever bothered to revive it. Under Linux it's impossible to get an easy to read overview of your devices, their properties, loaded drivers and whether they work correctly. There are multiple very user-unfriendly console utilities to do that which are inaccessible for most users out there.
Not a single Linux distro that I'm aware of offers a user-friendly GUI program/utility/whatever which allows you to fix your boot issues. You're welcome to reinstall everything from scratch.
Linux distros don't notify the user of kernel issues (dmesg) which are often a must to understand whether your system is functioning properly. I've written a bash script for that which you're welcome to use (must be put into rc.local or similar).

Commentary From the Author

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 for me." or "I've never had any troubles with video in Linux." Guess what, there are thousands of users who Linux car analogy. Click to view the full image 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 that 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's 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 refute 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 GUIs (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 that you not 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 about here, since I have one very strong justification for doing that - the /. 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. This article was discussed on Slashdot, Reddit, Hacker News and Lobste.rs in 2017.

  • 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.

On a positive note

If you get an impression that Linux sucks - you are largely wrong. For a limited or/and non-professional 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. What's more, Linux, unlike Windows 10, doesn't collect data on you and doesn't send it anywhere.

Also there are several projects underway which are intended to simplify, modernize and unify the Linux desktop. They are NetworkManager, 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 derivative (CentOS).

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

Valve Software released Steam for Linux and ported the Source engine for Linux and also they developed a Steam gaming machine which is based on Linux. Valve's efforts have resulted in a number of AAA game titles having been made available natively for Linux, e.g. Metro Last Light. Valve since then have ported a lot of their games to Linux.

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 third-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!

Starting March 2017 you can watch Netflix in Linux.

In 2018 thanks to the DXVK project Linux gamers are now able to run DirectX 11 Windows games on Linux - Wine's own implementation is severly lacking and will probably be replaced with DXVK.

In August 2018 Valve released Proton for Steam: this compatibility layer based on Wine, allows you to run native Windows games from the Steam catalogue in Linux without using any tricks with almost native speed. Its only drawback is that it requires a modern enough GPU which supports Vulkan.

More and more games are now coded using the Vulkan API and they work just fine under Linux.

In 2022, Valve released a Linux-based gaming handheld, Steam Deck that runs Windows games via Wine/DXKV (Proton) which ultimately means that developers are spurred to make their Windows game run flawlessly under "emulation".

On May 11, 2022 NVIDIA released their Linux kernel driver as open source. At the time of release it is very incomplete and allows only to be used for NVIDIA GPUs in data centers as display driving bits are missing. This is a major development as it simplifies, streamlines and makes possible a ton of things not possible before, e.g. full secure boot, proper Optimus support, using GPL only symbols in the kernel, etc. etc. etc. Sadly only the latest two NVIDIA GPU architectures are supported: Ampere and Turing. The users of older GPUs still need to use the proprietary kernel module.

DXVK (a DirectX 9-11 translation layer to Vulkan) has seen a major success recently thanks to Valve's sponsorship. Many Windows games run under Linux with little to no performance loss or in some cases even faster than under Windows. Intel has started to use it for its discrete GPUs.

top 2 comments
sorted by: hot top controversial new old
[-] ndupont@lemmy.world 1 points 1 day ago
[-] Uschteinheim@lemmy.world -1 points 13 hours ago
this post was submitted on 26 Dec 2024
-14 points (25.0% liked)

Linuxsucks

209 readers
84 users here now

Rules:

  1. FOSS advocates and Linux evangelists aren't welcome. -We ask that you block us.
  2. Moderation is heavy handed. Try to stay on topic (that is LINUXSUCKS!).
  3. No Complaining Mute the sub if users, content, or rules bother you *it's ok to report rule violations

founded 2 months ago
MODERATORS