"Too much choice" is strictly a developer problem. If I'm going to be releasing big budget, AAA software on a given platform, I need to know that 99+% of that platform's users will be able to click the icon and have it "just work" with no extra effort, and I also need to know that binaries I release today will still work 5+ years down the line, on the latest version of the OS at that time.
On windows it's easy to meet those requirements. On Linux it's nearly impossible, because "Linux" isn't actually an OS, it's a hundred different OSes, each with it's own GUI quirks and package availabilities and update schedules and hardware compatibilities.