You are not wrong that compatibility is a factor in the success of the Linux kernel and a huge reason that desktop Linux has never really hit the mainstream.
Flatpak looks like it may partially fix that problem for desktop apps. Certainly, Flatpak makes it more realistic to support a commercial app on Linux.
For gaming, somewhat ironically, the Windows APIs are serving to provide that compatibility role. If I wanted to reach Linux gamers, I think I would write a Windows game that was properly tested for good compatibility and performance on Proton. Not only can I probably effectively reach more Linux desktops that way today but my game will probably still run well a couple of years from now whereas a “native” Linux binary will probably have broken by then.
Flatpak looks like it may partially fix that problem for desktop apps. Certainly, Flatpak makes it more realistic to support a commercial app on Linux.
For gaming, somewhat ironically, the Windows APIs are serving to provide that compatibility role. If I wanted to reach Linux gamers, I think I would write a Windows game that was properly tested for good compatibility and performance on Proton. Not only can I probably effectively reach more Linux desktops that way today but my game will probably still run well a couple of years from now whereas a “native” Linux binary will probably have broken by then.