Kappes Buur wrote:Wasn't Linux supposed to be the wunderkind of operating systems to unify and ease the use of computers, to answers the "Monstrosity" that Windows was perceived to be by some.
No, there's many parts to what "Linux" is. Technically, all Linux is, is the kernel. Android runs on Linux, even though few people look at it as "Linux". Linux started as a personal project by Linus Torvalds to create a kernel similar to MINIX. At the same time, there was also the GNU project, a complete separate project developing an open source OS, and many of the GNU userspace tools and programs were easily ported to Linux. Distros started popping up that combined the Linux kernel with a GNU-based userspace. and this is what many people see as "Linux" today. Incidentally, GNU had its own kernel in development, GNU Hurd, but the Linux kernel is far and away more widely used than Hurd. This is part of the reason why you'll see some people prefer to call it "GNU/Linux" to make it clear they're not talking about just Linux the kernel but also a GNU-based userspace, though to most people it's the same thing.
One of the things that helped Linux take off was, aside from being a competently-developed piece of software, it latched on to the open source/free software movement. Anyone can use, look at, contribute, and improve the code. No license fee for users or companies to buy/use it, you can modify it in any way that you need. You don't have to wait for a company like Microsoft to see some financial incentive to make some improvement to Windows, anyone can go and do it if it's something they want (this is double-edged sword, though; if no one with the appropriate skill wants to do something, then no matter what it is, it won't get done without someone providing an incentive). Of course, there are a number of companies that work with Linux these days. Intel, AMD, Valve, and even Microsoft contribute to both the kernel, and various userspace aspects. Companies like Red Hat and Canonical also work directly with Linux and have their own distros (fun fact: Microsoft has their own Linux distro too that they use for the WSL, and Valve has their own Linux distro that's used by the Steam Deck). Of course these companies will only focus on aspects that are pertinent to their usecase; Microsoft focusing on things that help interoperability with their Azure cloud services and WSL integration, for example. But it's still a collaborative effort. Even if a company only focuses on what's important to it, other companies that also have an interest in that same thing will be helping too. Over the last 10 to 15 years, for instance, more big-name companies have gotten involved in the Linux graphics stack, starting with Intel, then AMD, even nVidia pitching in, and also Valve, and there's been significant improvements all across the board. Aside from nVidia (who still largely does their own thing for graphics support and uses their own internal shared codebase for Windows and Linux drivers), graphics support for Intel and AMD devices has improved drastically over the last several years, in some respects even better than Windows (e.g. OpenGL support for AMD today is better performing and much more stable compared to Windows with AMD's own drivers).
Kappes Buur wrote:Instead I see one *nux distro after another to muddle the field beyond any reasonable expectation to be taken seriously. I don't know, it may have some benefits in some particular setting.
A distro is effectively a set of preconfigured packages and a curated repository of common packages. Some distros may use KDE by default, some may use Gnome, etc. So if someone doesn't like KDE and prefers Gnome, they don't have to have KDE preinstalled for them and be made to go around installing Gnome packages and removing KDE, they can just pick a distro that uses Gnome. And for any popular distro, the packages available will be largely the same, so except for some edge-cases, picking a distro isn't going to lock you out of things that only work with another distro.
It would be inaccurate to say there are no differences at all, obviously. Some distros may update packages faster or slower than others (especially for Long Term Support vs Rolling Release), and different distros will have varying level of quality control. It's rare for something to outright break your OS or important packages (distros with really poor quality control tend not to become popular, for obvious reasons), though it's not unexpected that some issues may only show up in some distros and not others as a result of particular package collections and versions. But that's the price to pay for choice. Some people are fine being told "this is what you get with this OS, take it or leave it" as it means a more consistent, if less flexible, experience. Other people prefer having choices, even if it means dealing with more rough edges.
Kappes Buur wrote:So, why are so many people using a *nux distro, what do you see as a benefit?
I simply prefer the open-ness of Linux. It promotes open standards like OpenGL/Vulkan (which are designed by companies making the hardware/drivers, and has open specifications that anyone can implement) instead of DirectX (which is ultimately designed by Microsoft, who only provides information necessary for developers to use it, not for others to make their own implementation), as an obvious example. But there are smaller and less visible things too, like the use of the X11 protocol used by various Unix systems for display server capabilities; XFree86 was the defacto X display server for Linux systems for quite some time, but at some point that project ran into problems that caused it to slow down development and not implement features that were being asked for. But instead of that being the death of display servers on Linux, a new project called Xorg sprung up that was also an X display server, compatible with programs written for the old one since it's the same protocol, and quickly supplanted XFree86. And now that the X11 protocol has been pushed to its limits and something new is needed to bring things into the future, people are working on Wayland as a replacement to X, but Wayland is able to implement its own X server so that old stuff using the X11 protocol continues to work even still.
In some cases, the way it promotes open-ness and interoperability can be easily overlooked when dealing with custom software. For example, PulseAudio became a defacto audio server on Linux. For most people, it worked perfectly fine, although there were issues some people had with it, and it has architectural problems that prevent it from being able to do low-latency "pro audio" work. Along comes PipeWire, a separate audio server project for Linux that aims to fix the problems people had with PulseAudio while having a better architectural design that lets it work for both low-latency and normal desktop usage. In a normal scenario, either PipeWire would be dead on arrival since audio software was written for PulseAudio (or ALSA) and one would use it, or it would cause a schism and result in some software being written for PipeWire and not work with PulseAudio, and vice-versa. However, all this stuff is open. Even though PulseAudio is a completely custom audio server with its own protocol for client communication, the PipeWire developers were able to implement their own PulseAudio-compatible server on top of their PipeWire server relatively easily, so all existing apps using PulseAudio continue to work with PipeWire. As a result, PipeWire is gaining a lot of traction fairly quickly. For many people, it's already a seamless transition, for some others, it makes audio work noticeably better, and it's still being improved to smooth it out even more.
Supporting open standards and portable APIs also means software written for Linux has an easier time being ported elsewhere, as opposed to the Windows APIs being exclusive to Windows and substantially increasing development costs to port elsewhere (and/or requiring a lot of reverse engineering effort for other OSs to provide compatibility, and it always being a moving target they have no input on). Many of the APIs used for Linux (OpenGL/Vulkan, SDL, OpenAL, Qt, GTK, etc) can be used elsewhere, even on Windows, which reduces the amount of work for an app to support more OSs.
This kind of open-ness and portability of software is what I really like about Linux, and I want to see more of it. To not be locked to a specific software vendor because they have sole control of the API and implementation, to promote collaboration and make something better than one company or group alone would produce. To be able to improve it myself if I can. That's the benefit I see. More generally, I also feel more comfortable with the amount of control Linux offers. From the command line (which, regardless if someone thinks it should be "required" to use Linux or not (hint: it's not), it is a good tool
for me), to being able to better control what software is installed, and the available options in what software to use, a system like this is more comfortable for me.