In a sense, one can't call all of them _one_ OS, whereas you would call all versions of Windows basically one OS that has been consistently updated throughout the years.
I wonder if so many Linux distros is actually Linux's Achilles' heel. IMO, it'd be better if these sparse efforts would get focused on _one_ solid, no-frets, no-hassle, Linux OS that ordinary people could trust to be stable and reliable for years to come.
I think that's conceptually a misunderstanding of how open source development works. If five people work on five different distributions, then that's generally because these people have different ideas of how they want things to behave and are motivated to work on realizing these ideas. If you would try to "focus" these "sparse efforts", you wouldn't end up with five people cooperating on one common distribution, you would end up with five people no longer contributing at all since the common system no longe represents their personal motivation for working on it in the first place. (That is if you would be able to magically stop the old distributions)
Now if this is a good or a bad thing depends on your point of view. Is it harming "mass adoption"? Probably. Is "mass adoption" actually a reasonable goal for an open source ecosystem? Probably not. After all non contributing users don't really provide much value to the projects they are using, especially if they still need support. (I'm not trying to say that open source projects are or should be hostile towards users, just that increasing adoption is not necessarily a priority.)
Similarly, a lot of the time it doesn't really matter what distro something is based on, because I can just consume it in a container or VM and don't need to care.
What does matter are properties such as supportability, the availability and ease of security updates, and so on. So if you ship a container that requires something obscure that I'm not sure security updates will be readily available for, then that matters. But just the fact that it's "not my distro" doesn't really matter.
It's also self defeating to use an obscure distro if you're going to need help and the people you're going to ask for help don't know it.
Each Linux distro is an OS i n its own right and targets specific audiences. Many have and continue to try and fail to unify and create a distro that is like MacOS or Windows without thinking about what it took for those OS to be consumer ready.
Are you willing to pay hundress of dollars for a distro? If not, then see which distro comes close to meeting your specifc needs and accept it will never have mass adoption. Work to help solve bugs and improve UX in your distro of choice as well.
The incentive to develop Linux distros vary wildly but they are all needs the creators and supporters agree upon. While the incentive behind MacOS and Windows are mass adoption for the sake of profit.
Maybe one day there will be a for profit Linux distro that is will funnel profits to upstream devs and has actual adoption as a goal instead of what current users and devs think is best. Maybe that year is 2022, the year of the Linux Desktop!
It's just random people doing random things and making the same mistakes over and over, it's horribly inefficient but incredibly resilient as a social mechanism. Distributions are an attempt to orchestrate the resulting chaos into something coherent and usable, and since they are open source in nature, they suffer from the very same inefficiencies (and resilience)
You want BSD, not linux.
If you're not sure what to use, just use Ubuntu. It's a great default distro.
(So the real question might be "Is the proliferation of standard Linux components harming the Linux ecosystem?")
> IMO, it'd be better if these sparse efforts would get focused on _one_ solid, no-frets, no-hassle, Linux OS that ordinary people could trust to be stable and reliable for years to come
I don't think it's possible to make one Linux version that appeals to everyone. "no-frets, no-hassle" comes with tradeoffs. So does "solid".
But even if you did try to make a beginner-friendly Linux distro, you wouldn't have the support of the majority of the community, because most Linux users are perfectly happy with an existing distro. Even people who try to convert their parents and grandparents to Linux, seem perfectly fine to throw them into Ubuntu and call it a day.
The closest equivalent desktop Linux distro in terms of usability, poularity, and support might be Ubuntu, but Ubuntu's design decisions don't necessarily satisfy all use cases and users, and there is nothing preventing them from developing their own Linux-based OS distributions.
For better or for worse, Windows binaries are the de facto standard format for commercial PC games and productivity software. Fortunately many of them can run on Linux via Proton/WINE.
For example, openssl [1] is a crucial piece of code with very few full-time developers, especially if you consider the total installed base thereof.
There is, of course, a XKCD for this problem as well: [2]
[0] https://en.wikipedia.org/wiki/Bus_factor
A minimal Linux system requires many GNU utilities and software from other projects to give you a basic command prompt with network connectivity. A Desktop system requires GNOME, KDE, etc.
Contrast this with BSD where a default install gives you a base system. There are BSD distros, but they only focus on orchestration and higher level components, not the base system.
Surely it would be better to restrict sales to two car brands and only allow two models within those two brands.
(That's a ridiculous suggestion, isn't it? About as ridiculous as restricting the number of Linux distros. As with cars, people want things that suit THEIR needs better, not what everybody else in the world THINKS they should use.)
The beauty of Linux is that distros can be as individual (Ferrari) or as widespread (F150) as the cars on the road are. So some people like Windows (Ford) or MacOS (GM), so what? The choice of Operating systems can be as broad as the choice of cars.
The variety of choice that we have available is one of the greatest strengths of OSes built around the Linux kernel.
The problem is that we in the Linux community can't admit there are problems and then fix them. If there is a problem, chances are the best way to fix it is by forking.
One big strength of open source is having source available so others can use and improve and extend it. You can never have two many clones, copies or workalikes.
Now you're suggesting this might be a weakness?