Because despite it’s technical superiority in many aspects, it’s still inferior to windows on the desktop.
First, let’s clear things up. MacOS is the least used OS of the 3, bar none. It has 0 percent of the server market, and barely into the double digits in the desktop market. It’s not used at all in the mobile market, though apple does have IOS there.
Linux owns somewhere around 80% of the public facing internet, maybe more. It is absolutely dominant in networking gear such as switches and routers and firewalls. It is by far the most used mobile OS in the world. It has a a few percentage points in the desktop.. the only place it falls flat.
Windows is number 2 in the server market. Yes, Linux absolutely dominates the public facing side of the internet, but it’s much more common on the inside the perimeter environments NOT on the net. It is absolutely king on the desktop.
I assume that since there is only ONE place that linux is failing to dominate, that you’re speaking about the desktop. Well, lets see if we can figure out why.
Desktops are fairly useless without a gui. I’ll wager every single answer here was written from a gui… so Linux’s legendary stability on servers where there is only CLI is moot. This is my current screen showing on my linux workstation…
Do you think I want to deal with that? Sure, it’s easy.. but do you think an osx user or a windows user would see this and think to themselves “gee, this sure beats my windows or osx install!”? I’ve been running windows since 2.1. I’ve used osx since os9. I’ve never seen any bullshit like this until I started running linux. Now, it’s especially aggravating for me since my keyboard is a 60% and I need my fn key to enable my function keys, and ctrl +fn changes layers and wont let me change terminals… It’s actually easier to ssh in from my windows laptop or my phone to my computer than it is to unlock it from my current hardware…
This is quite probably because I’m running kde on wayland. Why not run kde on x11 like a sane person? You see, I have monitors that run at up to 165hz. In x11, they top out at 60 hz when running kde. When running wyland I get the full 165 hz. But this issue is only in kde. Odd problem to have right?
So why not use a different desktop manager? Well cinnamon is stable, gets me my 165 hz. It can’t keep track of what monitor my conky configs are on, which is rather annoying when I’m using one monitor for one system and the other for another system (on a different input)… What it means is that My computer locks, and all of my stuff that was on my screen, when I unlock the computer is on the other screen, which isn’t up right now… so I have to stop conky and restart it to have it come up on the right screen… which isn’t a big deal, but not a task I want to repeat 20 times a day. Cinnamon, and only under the cinnamon desktop, does seem to have major issues connecting to my BT headset (sony xm3’s). No issues with that under kde. Cinnamon requires another program running in the background to display a second image on monitor 2 vs having the same background image… Little annoyances day in and day out (I prefer cinnamon actually, but kde does seem to be more… uhh.. consistent).
Why not gnome.. because I hate how gnome works. I hate it’s menu.
Why not another window manager? I’ve tried several, at some point you have to commit.
OK, so desktop shoddiness aside, what other reasons should we consider that linux might not be the dominant desktop.
Gaming performance - it’s getting better. It’s still not near windows though.
Driver support - Only an insane person wants to upgrade their video driver after a kernel update. Nvidia’s binary drivers (the best out there right now), require that. AMD has good performance under the mesa drivers, but AMD is not the video company with the largest market share, or the most performant cards.
Network cards aren’t designed with linux in mind frequently, and if/when a driver happens.. you may not get full speed the card is capable of. ESPECIALLY wireless cards. Now if you have an intel or broadcom wired nic.. then your max throughput will perform better than windows… But wireless is much less of a guarantee.
In Linux, you cannot just assume that hardware you can go to microcenter, fryes, best buy, etc… is going to be compatible and work. Before every purchase you need to go and check compatibility. For many people, that isn’t worth the effort to run a “free” system. Free as in speech that is.. only the most hardcore of hardcore actually run free systems only. Debian, which historically only shipped with free firmware, etc… is changing to shipping proprietary firmware on their installers, because you pretty much can’t run a modern system without them.
Ok, so assume you’re willing to deal with gui instability and limited hardware.. there is a lack of killer apps that don’t run elsewhere that makes it a necessity to switch. I’m serious, name a linux only application that is sufficient to make folks switch. Many folks wont run linux because there ARE those killer apps on windows and mac. Adobe suite is one. MS office is another. There really aren’t those type apps for linux. No, libre office is NOT a substitute for MS office (especially to power users). Thunderbird is NOT a replacement for outlook. Some folks really don’t want to use online office products just to read crap that has been sent to them (I recently had a document that couldn’t be read because the watermark was misinterpreted by libreoffice, and when I tried to print it… it was too dark to read through because the dithering was not working correctly on my laser printer when sent the job from libreoffice… ). Gimp is NOT a replacement for adobe suite. So what killer program does linux have for the desktop that makes folks switch. You have to give people a reason to switch.. they’re not going to do it on their own. I have certain actions I need to perform on my personal system for work. Some of these include using a certificate off a smart card to digitally sign a signature block in a pdf. Adobe dropped that back in 2012. Okular claims to do it, and it seems to read my digital signature just fine.. but I cannot sign documents yet (could be an old version of okular in my distro… ). I run linux as my daily driver, and still have a windows machine or two just for those oddball things.
Maybe it’s security that will make folks switch. I mean, linux is more secure than windows right? Look at android…. it only has thousands of trojans in the play store and folks still use it.. oh, wait, maybe security isn’t the concern for normal users as much as techie’s think.
I know, it’s the fast updates that make folks want to switch. LOL… The updates apply faster, are smaller, and happen every few days. In systems like debian, that’s ok.. they’re far enough behind that the fixes are pretty well tested. In more rolling type systems like arch, updates break shit. The guy from DistroTube, he’s supposedly ditching getting updates via pacman because it keeps breaking his system.. maybe he’s only talking applications though. He’s going to snaps for those. Imagine having your system updater, which handles all your apps as well (what was a major selling point for linux), being so .. off…. that people a considering using the windows approach for applications (everything is installed together in it’s own little environment or folder) just to avoid breaking things. This guy isn’t a complete novice… It seems to be a dirty little secret in linux communities.. updates do break things. As many zealots rant and rave about windows updates braking things.. but google arch broken by update, but don’t talk about that.. it makes us look bad. F that… people claim to switch from windows because updates brake things.. only to be mute about grub breaking updates in linux. It’s hypocrisy.
Short and simple, people want a desktop that is like an appliance, they turn it on and do their thing. They don’t want to have to deal with inconsistency on the desktop.. as a matter of fact it’s a major eyesore. To users, it’s a tell tale that the system isn’t ready for deployment.