I think the biggest issue with the question of “Is Linux Ready for the Desktop?” is defining the expectations for a desktop system.
If you want gaming youre definitely screwed now on Apple hardware compared to Windows and Linux, so does that mean MacOS isnt ready. How about some form of privacy, is that the expectation because MacOS and Windows both fail compared to linux. If youre expecting a Windows experience MacOS and Linux wont satisfy that.
People need to understand that while there is a lot of money behind linux in many areas, the “desktop” aspect of Linux is largely handled by the community or groups like Gnome or KDE. The big money players in Linux havent focused on it for things outside their use case. Even Valve has been lazer focused on gaming not the Linux Desktop as a whole. If you want big money features someone has to put that time in, and if theyre not getting paid they have to do it in their spare time.
Some of this article is just plain silly when criticizing linux as a desktop. What are we supposed to do about the Nvidia situation, the lack of good driver UI, or that fact that they go out of their way to prevent folks like Nouveau being able to implement proper support for new GPUs. Thats Nvidias fault, they COULD do it, but they dont want to and have left it largely the same for 10yrs+
Monitors/display suppport (also check the X system section below):
!! 30bit displays are unusable under Linux. Firefox is very slow, Google Chrome is broken, KDE doesn't work, Steam crashes, etc. etc. etc.
!! High-refresh rate monitors are not properly supported as Firefox and Chrome sometimes default to 60Hz. At least Firefox has a workaround: you can set the desired refresh rate in about:config using layout.frame_rate.
!! HDR is not supported.
This is fair but also I would like to note that REAL HDR displays arent common and 30bit displays even less common. Those using 30bit displays have a workflow already 9/10 times and arent going to switch to a different OS be it Linux, Windows, or MacOS because that down time is money so it hasnt been a concern until some folks made it one recently.
Audio subsystem (the section needs to be updated for PipeWire but it’s not yet deployed by most distros, so it’ll come later):
Both PipeWire and PulseAudio are not configured out of the box to support multi-user mode (e.g. multiple users sharing the same device simultaneously) and configuring them to enable this feature is impossible for the average user (no gui whatsoever, you need to edit text files).
Echo cancellation is a PITA (and most likely impossible for most users) to enable both in PipeWire (no instructions as of now even though the feature, the echo-cancel module, has recently been added) and PulseAudio.
Hardly a dealbreaker but then audio professionals also want to use Linux: high definition audio support (>=96KHz, >=24bit) is usually impossible to set up without using console.
Various audio effects like volume normalization are not included or enabled by default by most distros.
!! Advanced audio configuration is available only by editing text files in console.
You cannot have per device default sampling rate frequency.
Pretty sure some of this is wrong, at least regarding pipewire, having to use text files is true but the number of people that care about their audio settings is fairly few. It can improve but most people only care if sound comes out they dont care how or why.
There is too much else to go through but you catch my drift. I think some of this is fair but some is just silly, not well informed, or nit picking some extremely edge case for the sake of an argument point.
EDIT: Just one more to comment on
Very incomplete hardware sensors support, for instance, HWiNFO64 detects and shows ten hardware sensor sources on my average desktop PC and over fifty sensors, whilst lm-sensors detect and present just four sources and twenty sensors. This situation is even worse on laptops - sometimes the only readings you get from lm-sensors are cpu cores’ temperatures.
WHAT DO YOU WANT US TO DO ABOUT THIS!? On windows they have drivers for it from the manufacturer, Linux gets screwed unless you use a system by a company that supports Linux. I.E My Dell machines give me a lot of temp sensors and even ones for the actual dimm slots. If a company wont support us we have to wait for someone to reverse engineer it. Thats not the fault of Linux.
EDIT:2
Many anti-cheat protections fail to work under Linux. Besides in Linux it’s near impossible to guarantee that game assets haven’t been tinkered with (think of transparent walls for first-person competitive shooters like Counter Strike Global Offensive, Valorant or Apex Legends).
Again not something anyone but the original devs can fix, but also how do you figure “it’s near impossible to guarantee that game assets haven’t been tinkered with” ? if it was that easy CSGO cheaters would flock to linux in a heart beat (they dont, because its not)
!! Linux lacks an alternative to Windows Task Manager which shows not only CPU/RAM load, but also Network/IO/GPU load and temperature for the latter. There’s no way to ascertain the CPU/RAM/IO load of processes’ groups, e.g. web browsers like Mozilla Firefox or Google Chrome.
