Попробую подвести эту тему к какой-то развязке. На сколько это можно поздно вечером)
На сколько помню здесь уже говорилось в виде аргумента, что Linux сложная система и ей не просто пользоваться. Поэтому ей так мало и пользуются. Но Windows или MacOS тоже не простые системы, особенно если нужно "заглянуть под капот".
Если посмотреть современные дистрибутивы, то многие из них позиционируются как user friendly. Список всех дистрибутивов можно найти на сайте: https://distrowatch.com/
И действительно, интерфейс системы все упрощается, но от этого пользователей не становиться все больше. Здесь уже затрагивали проблему, что какие-то устройства могут не поддерживаться нормально на Linux. И чтобы убедиться, что все нормально работает, надо изучить, какие устройства установлены на ПК и все ли они поддерживаются, перед тем как ставить Linux. Мне кажется, это более весомая причина, чем сложность самой системы. В таких случаях, для того, чтобы нормально запустить систему пользователю приходится долго изучать форумы, делать разные эксперименты со своей системой. Поэтому, мне кажется, когда речь заходит о сложности системы, часто имеется ввиду именно такие случаи.
Здесь почти не упоминался другой аргумент, что не все программы можно найти под Linux. До сих пор не все игры можно запустить под Linux. Хотя стало гораздо проще чем раньше. Много игр нормально запускается под эмуляторами. Но далеко не все игры доступны под Linux.
Кто работал с разными CAD системами тоже сталкивался с подобными проблемами. Есть аналоги AutoCAD, но не помню чтобы были аналоги ArchiCAD. Да и на базе AutoCAD есть набор разных автоматизированных систем проектирования. Не уверен, что подобные программы с поддержкой hw ключей можно как-то запустить на wine или на другом каком-нибудь эмуляторе.
Для некоторых программ есть аналоги в мире Linux, но по дружелюбности интерфейса и возможностям им далеко от этих программ.
Ладно, хватит с негатива, давайте попробуем разобраться почему такое происходит.
Для начала хотел бы упомянуть случай, произошедший на конференции по Linux. Если не ошибаюсь это произошло в далеком 2012 году. На конференции была затронута тема поддержки технологии Nvidia Optimus, в которой Линус Торвальдс очень негативно высказался об компании Nvidia.
Сама технология разрабатывалась для ноутбуков. Смысл технологии был в том, чтобы уменьшить энергопотребление в ноутбуках с дискретными видеокартами. Если не требуется большая графическая нагрузка, то можно использовать видео ядро на процессоре. Если нужно более мощная графика, то используется дискретная видео карта. Для отображения изображения дискретная видеокарта отправляла видео поток, а видео ядро на процессоре отправлял этот видео поток на дисплей. Для ноутбуков с дискретной видеокартой Nvidia предоставляла драйвера. До этой технологии Nvidia карты работали без проблем на Linux. Но почему-то Nvidia для своей новой технологии не добавила поддержку в Linux. После чего, у пользователей начали возникать проблемы - после загрузки системы дисплей оставался черным. Скорее всего, технология была запатентована Nvidia и компания не хотела предоставлять любую информацию о своей технологии даже в коде. Но в любом случае, можно была перетащить часть своей закрытой логики в библиотеки.
Полагаю, проблема тут гораздо глубже чем кажется. Поставьте себя на место разработчиков железа. Есть Windows у которого огромное количество пользователей и с очень высокой вероятностью, что эта железка будет работать на Windows. Поэтому им выгодно самим написать драйвер под Windows. Так в большинстве случаев и происходит. Разработчикам программ так же выгодно писать свои программы под популярную ОС. А стоит ли тратить свои ресурсы на поддержку Linux если железка будет работать на другой ОС. Opensource сообщество физически не может поддержать все существующие устройства. Да и информацию о этих устройствах никто просто так не даст.
Вкратце можно сказать, что Windows исторически занял нишу систем для обычных пользователей(пользователи ПК) и стал монополистом в этой области. Наверное уже поняли почему я не люблю монополии)
И Linux очень сложно бороться с Windows. Чтобы была нормальная поддержка всех устройств, нужно чтобы система стала популярна. Чтобы было много хорошего ПО, так же, нужна популярность ОС. А потенциальные пользователи так же смотрят как работает ОС, есть ли с ней какие-либо проблемы, есть ли все необходимые программы для работы? Тут и получается замкнутый круг.
А теперь назовем кто какие ниши занимает. Windows и MacOS делят нишу ПК. Android является монополистом в мобильном сегменте. Linux и FreeBSD монополисты в серверном сегменте. Linux-у очень сложно конкурировать с Windows в сегменте ПК. Windows не смог конкурировать с Android в мобильном сегменте и очень тяжело конкурирует в серверном сегменте.