Its good to emphasize the importance of power users. In a lot of ways, they are the center of gravity in a tech ecosystem.
But 98% of the power users / techies I know want standards. Linux distros are chock full of standards under the hood, but there is no hardware certification standard (so finding compatible peripherals is always weird+risky), and there is no standard UI. Techies want both those things (and more). Yes, most power users prefer Windows or OS X for these reasons! A techie who must give tech support instructions to users as _shell_ commands because there is no standard GUI is a techie who will turn their back on "desktop Linux".
The three social maladies FOSS community has, which leads to this predicament are:
1. It thinks "Linux" is an OS. Its only an OS for technical elites, to anyone with a consumer mindset (which includes most power users) it is nothing at all. Put another way: What is Linux to an Android user? Its something vague that rattles around under the hood.
2. "Interfaces are commitments (learned that in CS) – but only to my hacker peers. I refuse to make commitments to end-users; that would be then end of freedom!" Truth: Interfaces are commitments for everyone involved, most especially for UIs. If a certain class of stakeholder experiences a computer as chaotic, then that system is a failure. Computers must deliver consistency or else... be unplugged.
3. Distro packaging was both app-developer and user hostile. The "solution" is, uh... Let me just cut to the chase: Snapcraft is an OS. Think about it. Is that good? IDK. The other app packaging contenders are less useful to desktop consumers for reasons I won't get into here.
To be worthy of the general public's attention & investment, FOSS desktop developers must shift their mindset to the questions: a) How do I get ppl excited enough about the platform to start writing apps for it? b) How do I bring app developers and end-users together in the least stressful ways possible?
The answers to these may vary at times, but they usually look like: "Vertical integration goodies are on the way", "Targeting dependencies is usually just checking the OS version" and "Keep the UI and other interfaces consistent but not spartan". (FOSS tends to emphasize horizontal integration, per-library dependency resolution, disposable UIs and spartan APIs – almost all wrong answers for the desktop!).
Also, this was an early peeve of Mark Shuttleworth's: If you have a standard collection of desktop APIs, they will be relatively useless unless the APIs in the ensemble have standard versions. The rest of the Linux distro community at the time said "No" we'll mix-match upstream versions as each sees fit; this is perfectly reasonable if you assume all "developers" are system hackers who occasionally write apps.
Google figured out most of the above with Android, which considers the Linux kernel replaceable BTW.