Hello,
> If I go to the store and buy a new desktop PC, I can select Windows
> (one provider) or Linux (various providers) and use the full
> capabilities of the PC, to browse the internet, play a game, do office
> work, listen to music, using modern peripherals based on USB and
> Bluetooth.
If you are looking for a production-ready desktop OS, you have clearly
came to the wrong place.
In this world, there are only three such OS'es: Windows, Linux, Mac OS.
And this is not going to change anytime soon, because it is extremely
hard to make such an OS.
Take GPUs for example. They are crucial for good desktop experience. But
those are complex and diverse devices, to the point you can't write a
driver without vendor involvement. Amdgpu driver for Linux alone
consists of several millions lines of code. And we're not talking
Vulkan/OpenGL drivers. In result, there is the only one open source
feature complete GPU stack in the world: Linux DRM + Mesa. Every other
open source OS wishing to run modern GUI software has to port it
(FreeBSD and OpenBSD do). Haiku has enough will to carry its own
infrastructure and they have ported NVidia's open driver, but that is
because it was designed to be portable. Not sure if they have OpenGL
working, better ask them though.
There are many more aspects that are difficult to tackle as well: WI-FI
is hard, Bluetooth is hard, sound hardware is hard, laptop hardware is
hard and quirky and vendor-specific, etc etc.
There is also need for userspace infrastructure, it is also non-trivial.
Then there is also a non-trivial problem of making all of this work on a
microkernel OS.
Even if Minix was not abandoned, supporting all of this would be
infeasible for a rather small team which used to maintain Minix. And
even actively developed and more advanced microkernel OSes, such as
Redox and Managarm can not be considered production-ready, despite the
effort.
Making an actual production-ready OS would cost you billions of dollars
and gargantuan amount of manpower. Hence, the status quo is going to
stand as is.
> And if you try to improve MINIX, you run into the fact that the source
> code cannot be compiled with modern compilers.
This is actually easy to fix. There are already patches that allow
building Minix with GCC 11, one needs to update them accordingly. GCC
developers publish porting guides for each major version, they are
helpful.