I think Unity (and KDE) were good enough to replace Windows but Windows won 10 years before Gnome and KDE became a thing. And yes Windows95 was not only good enough but great as you pointed.
The lack of hardware support was because it made no sense for hardware companies to support an OS with less than 1% market share and same for the gigantic ecosystem of software that ran on windows which had a very long tail.
My point is that Linux didn't lose the desktop because of any mistakes the community made (and god knows there were many), it lost because Windows had already won this platform for a loooong time and the incentives to switch weren't great (OS are boring, most people don't even know what an OS is).
I agree. Many mistakes would have been fine if there was a compelling reason for users to switch. Linux has been successful when it found a greenfield space: Android, Chromebook, x86 servers. The open source aspect isn't magic, it won't make "clone knockoff in an existing space" into an interesting product.
This was the root cause, "a new desktop" presupposes the existing product category "desktop" which was a solved problem and a mature market. Runaway marketshare required NEW categories.
ABI compat and hardware support are hygiene features; they can slow adoption, but solving them doesn't motivate adoption. Linux needed the motivator; that would have then funded solving the hygiene stuff - just as it has, at least well enough, for x86 servers, Android, and Chromebook.
I don't say this with 20/20 hindsight either. I made this point loudly both inside GNOME and inside Red Hat back in the day. We even had chromebook-type proposals. But the Linux companies at that time were too small and server-focused to undertake such things, and once ipad/chromebook/android were out, there wasn't an obvious opportunity anymore for "Linux" proper.
Still, "Linux desktop" continues to work well for me and millions of other developers daily and I think it's very good for a dev workstation, as long as you buy hardware with OEM-developed open drivers (which mostly means Intel parts).
A lot of people who find it doesn't work for them are doing the equivalent of running OS X on non-Apple hardware with hacks to modify the finder, and surprise it's buggy. Granted, in the Linux world it isn't so clear what the "supported configuration" is. But think boring: default config of a major distribution with all open source drivers...
The lack of hardware support was because it made no sense for hardware companies to support an OS with less than 1% market share and same for the gigantic ecosystem of software that ran on windows which had a very long tail.
My point is that Linux didn't lose the desktop because of any mistakes the community made (and god knows there were many), it lost because Windows had already won this platform for a loooong time and the incentives to switch weren't great (OS are boring, most people don't even know what an OS is).