So, next time you hear the joke about Win32 ABI being the only stable ABI on Linux, remember it's funny because it's true!
So, next time you hear the joke about Win32 ABI being the only stable ABI on Linux, remember it's funny because it's true!
Besides the many issues with the desktop itself, Windows offers piss poor filesystem performance for common developer tools, plus leaves users to contend with the complexity of a split world thanks to the (very slow) 9pfs shares used to present host filesystems to guest and vice-versa.
And then there's the many nasty and long-lived bugs, from showstopping memory leaks to data loss on the virtual disks of the guests to broken cursor tracking for GUI apps in WSLg...
While I agree that Windows has long since abandoned UI/UX consistency, it's not like that is unique: On desktop Linux I regularly have mixed Qt/KDE, GTK2, GTK3+/libadwaita and Electron (with every JS GUI framework being a different UI/UX experience) GUIs and dialogs. I'm sure libcosmic/iced and others will be added eventually too.
And you can choose to install GTK+, Qt, and Electron apps on Windows or macOS, too. That has no bearing on the consistency of the desktop environment itself (not on Linux or on macOSa or on Windows). That fact is simply not relevant here.
You could point to some specific distros which choose to bundle/preinstall incongruous software— those are operating systems that ship applications based on multiple, inconsistent UI toolkits. But that's neither universal to desktop Linux operating systems nor inherent in them. Many cases that do serve as examples by the definition above are still not comparable to the state of affairs on Windows— for instance, KDE distros that ship a well-integrated Firefox as their browser— are on the whole much more uniform than the Windows UI mess.
Why does that matter if that’s not how most users do it? There is no magical dividing lines between a distribution and the user choosing to install a random collection of apps on their own.
For instance where exactly do you draw a line between which app/package/component is part of a Linux distribution and which is third party? OTH it’s more than obvious for proprietary systems.
To be fair almost all Linux distros are as bad if not worse in this regard.
Things like YAST which are supposed to fix that are unambiguously horrible in their own right (extremely slow, crappy UX etc)
If all one wants it to run games that use the Win32 API as defined tomrrow, anyone's guess.
If some APIs are removed, it breaks older Windows games. I can't think of any historical API that has been completely removed in this way - even stuff like DirectDraw and DirectPlay is still there even though it has been deprecated for decades.
I don’t think MS has the attention span for stuff like that. Especially considering the limited short to medium term payoff.
They could buy Unity though. Considering how mismanaged that company is it wouldn’t be such a bad outcome. Of course large acquisitions are very costly and risky these days.
Considering the alternative (ie. the native approach) would result in having very few games on Linux anyway that doesn’t seem that bad.