25 августа 1991-го Линус Торвальдс впервые сообщил миру, что работает над новой ОС. Если отсчитывать от этого, то позавчера Linux исполнилось 30 лет, так что можно подвести какие-то итоги: например, скоро ли настанет «год линукса на десктопе»?
А неделю назад я написал о нюансах перехода на Mac. И быстро появились комментарии, что вот в линуксах нет описанных сложностей — мол, непонятно, зачем вообще люди страдают за маками. На мои слова «но в Linux есть другие проблемы, там многие чинят звук, лазая по форумам» ответили, что это устаревшие стереотипы. А сейчас всё работает из коробки, даёшь детям и они не нарадуются.
Я уже почти десять лет не использовал Linux в качестве основной системы, поэтому подумал: может, действительно напраслину возвожу, а всё уже изменилось и с форумами больше никогда не сталкиваешься? Наконец можно рекомендовать линукс родственникам? Вот-вот к нему придёт массовая популярность?
Захотелось хотя бы бегло глянуть. Тут ещё и повод подвернулся: помогал другому человеку выбрать ноутбук, и он был не против установки линукса. В общем, глянул. И быстро испытал столько ярких ощущений, что написал этот пост.
Для начала две важных оговорки:
1. Понимаю, что если покупаешь сертифицированный ноутбук с предустановленным Linux, там всё куда проще. И если бы сайты дистрибутивов крупно писали «только так и делайте, а ставить на своё железо — это для мазохистов», то никаких вопросов у меня бы не возникло. Но Linux позиционируют как систему, подходящую для установки на своё железо, поэтому и рассматриваю её так.
2. Легко воспринять этот текст как холивар «эппловский фанбой ненавидит линукс». Но это совсем не так, холивары я недолюбливаю, а к Linux хорошо отношусь и желаю ему процветания. Например, ещё в далёком 2010-м писал на Хабре пост, помогающий перейти на Ubuntu. У нас с женой даже татуировки оформлены шрифтом Ubuntu! Этого достаточно, чтобы официально не считаться хейтером? :)
В общем, я не против Linux. Зато я против фанбойства. Я за то, чтобы даже когда что-то нравится, уметь признавать и проблемы.
А теперь — две истории о них.
Попытка #1
Начал погружение в современный Linux с малого: сделал загрузочную флэшку с актуальной версией Ubuntu, чтобы запустить на своём iMac систему прямо с флэшки и бегло осмотреться.
Поначалу опасался «может, я единственный извращенец, который хочет запустить Linux на Mac», поэтому был морально готов к тому, что это вообще плохая идея. Но сайт Ubuntu развеял опасения: там нашлась инструкция, как в macOS сделать флэшку, максимально подходящую для использования с Mac. Значит, тропа проторенная, другие люди делали то же до меня, а в Canonical учли их потребности и официально пошли им навстречу. И флэшка успешно создалась.
Но стоило попробовать загрузиться с неё, как в первые же минуты столкнулся с четырьмя проблемами сразу.
У аймака беспроводные клавиатура и трекпад/мышь, по умолчанию Ubuntu их не увидела. Ну, тут подключил беспроводные устройства с помощью проводных, это ладно.
Ubuntu вроде как подцепила маковские кнопки регулировки яркости экрана: нажимаешь — индикатор показывает, как изменилась яркость. Вот только на индикаторе яркость менялась, а в реальности нет. Экран стабильно фигачил в лицо дискомфортной полной яркостью.
Ubuntu не увидела Wi-Fi-модуль. Возможно, это решается дополнительным драйвером из интернета. Только для этого надо к интернету сначала подключиться. Можно размыкать такой круг, подключаясь проводом, но у многих людей уже даже нет Ethernet-разъёма. А у iMac он есть, но мне не захотелось отключать моноблок от розетки и волочить в прихожую к роутеру, так что тут просто сдался.
Наконец, вишенка на торте. Из-за отсутствия интернета было не запустить музыку, но попробовал в настройках понажимать на кнопки «Test», которые должны издавать звук. Ничего не прозвучало. Поскольку на Хабре меня убеждали конкретно в отсутствии проблем со звуком, это выглядело особенно иронично.
Ну, пасьянс разложить получилось: ему интернет и звук не требуются. И думаю, если бы задался целью и выделил время, получилось бы решить все проблемы. Но просто вся эта ситуация безумно далека от слов «всё работает из коробки». Родственникам такое не посоветуешь.
А вот macOS посоветовать можно: когда тот же самый iMac был впервые запущен с родной системой, там действительно всё было готово к бою — и звук, и Wi-Fi, и яркость.
Попытка #2
Дальше разбирался с выбором ноутбука. Опыт с iMac показал, что совместимость Linux с железом остаётся больным местом. Значит, надо ещё до покупки убедиться, что всё будет хорошо.
Я попробовал выяснить это про интересующие модели, и тут же столкнулся с новой проблемой: дефицитом информации. Возьмём для примера Asus ZenBook 13 (это довольно популярная модель, вроде бы человечеству должно быть известно о её совместимости). Где это узнать?
На сайте Ubuntu в разделе помощи есть специальная страница Asus Zenbook — казалось бы, правильное место. Страница начинается словами «Наконец найдено надёжное решение проблемы внезапных выключений и зависаний!» (Спасибо, очень обнадёживает.) А затем посреди текста увидел упоминание версии Ubuntu 12.04. Хммм!
Полез в page history — и точно, оказывается, основное содержимое страницы датируется 2012 годом. То есть на официальном сайте висит информация девятилетней давности (по меркам IT это древнеримские руины), и нет даже предупреждения, что она давно не обновлялась. Наверняка кто-то выберет ноутбук по информации, давно потерявшей актуальность — может, её тогда лучше было и не публиковать?
Ладно, с совместимостью худо-бедно разобрался по разрозненным постам в разных блогах. В итоге вроде как подходящий ноутбук был куплен, и по советам с Хабра установил туда Linux Mint — вроде как самый человеколюбивый дистрибутив с минимумом проблем.
Этот дистрибутив встретил меня вот чем (извиняюсь за фото экрана вместо скриншота):
Действительно, хотя почти ничего не было запущено, ноутбук шумел кулером, сильно грелся и предрекал себе стремительную разрядку. Я ткнул в предлагаемую кнопку «запустить менеджер драйверов», и… он выдал сообщение в духе «у вас всё хорошо, устанавливать ничего не нужно». Оставив сидеть с гудящим горячим устройством. Ну отлично.
Стал гуглить и тут же провалился в бездну, с которой имел дело 10 лет назад. Скажем, гугл выдаёт статью «Enable Hardware Acceleration on Intel Graphics Cards in Ubuntu». В тексте пишут про опенсорсную библиотеку VDPAU, «но она недоступна на интеловских графических картах, зато есть проект libvdpau-va-gl, в котором VDPAU использует OpenGL, её можно использовать с некоторыми из интеловских чипов, тогда введите вот эти десять команд в терминале»…
Слушайте, я простой человек и хочу простых вещей: например, чтобы устройства работали. Я совсем не железячник, и если что-то подходит «некоторым интеловским чипам», мне неочевидно, входит ли стоящий передо мной ноутбук в «некоторые». Потратив время и силы, смогу в этом разобраться. Но хочется ли их тратить, танцевать с бубном и узнавать, что такое libvdpau-va-gl, просто для того, чтобы ноутбук справлялся со своей базовой функциональностью?
Позже нашёл-таки ответ: оказывается, для исправления ситуации надо было обновить ядро Linux. «Самый человеколюбивый линукс» совершенно не предлагал этого сделать (наоборот, спрятал это поглубже). Никакой официальной информации (от Linux Mint, Intel или ещё кого-то вроде) при гуглении тоже не вылезло. Правильный ответ нашёлся на форуме в записи обычного пользователя, среди кучи других записей.
Ладно, с этим разобрался, но осталась другая проблема: как и на Mac, регулировка яркости меняла только индикатор, а экрану хоть бы хны. Снова провалился в бездну форумов. В итоге не заставил нативные средства работать, зато нашёл работающее стороннее приложение для управления яркостью. Правда, оно даёт управлять яркостью только когда открываешь его, а не системными хоткеями. Так что ощущается костылём. Думаю, можно добиться лучшего результата, но тогда устал и на этом остановился.
Это не считая всяких мелочей. Вот, скажем, тут сразу понятно, какая из вкладок тебе нужна, да?
Ну и куда ж попросту без ошибок — нажатие на «масштабировать интерфейс» поначалу приводило к такому:
Думаю, общие ощущения понятны (вкратце они такие: в 18 лет с интересом разбирался бы по ночам, как всё это наладить, но сейчас I'm too old for this shit).
Выводы
Прямо ощущаю, как некоторым хочется сказать: «Но это только начальный период настройки, а дальше-то лучше, поэтому неправильно судить всё по этому периоду!»
Хорошо это понимаю, сам же и писал на Хабре 11 лет назад: «Возможно, поначалу гуглить придется изрядно, но не стоит думать, что это на всю жизнь так». Да, это правда. Но, например, мой пост про Mac тоже был именно про период перехода, и именно туда в комменты пришли объяснять, что в линуксе всё лучше.
Также наверняка есть много людей, у которых всё гораздо лучше. Самый простой вариант — ноутбук с предустановленным Linux. Да, мой сценарий — лишь один из возможных, и неправильно экстраполировать его на всех. Но точно так же неправильно экстраполировать на всех позитивный опыт и писать категоричное «да всё работает из коробки», когда на форумах видно, у какого количества людей не работает.
Поэтому хочется сказать следующее: при всех достоинствах Linux, из-за которых многим (в том числе мне) хотелось бы его масштабного распространения на десктопе, во многих ситуациях он остаётся недружелюбной к обычному пользователю системой. Наверняка на Хабре для многих всё вышеописанное не проблема. Но рекомендовать линукс родственникам по-прежнему не могу, подвергать их описанному точно не хотел бы, да и они сами просто плюнули бы на полпути.
Сильнее всего меня печалит даже не то, что вижу конкретно сейчас, а то, что с годами не вижу принципиального прогресса. Мне жаль, что мой пост 11-летней давности остался актуальным спустя все эти годы. Большинство упомянутых в нём сложностей никуда не делись. Необходимость просиживать штаны на форумах не исчезла. «Год линукса на десктопе» совершенно не наступил.
Когда Linux исполнялось 20, я бы предположил, что за следующее десятилетие смогут справиться с многим из этого. И все эти десять лет вроде как велась активная работа в разных направлениях — бегло поглядывая со стороны, слышал названия Wayland и Unity, слова «flatpak» и «snap». Но во-первых, всё это привносило не однозначное улучшение, а новые сложности: «так за чем будущее-то, flatpak или snap, мы не поняли». И во-вторых, всё это так и не избавляло от главных старых болячек. А пока пользователи не будут от них избавлены, ждать наступления «года линукса» было бы наивно.
Хорошее
Чтобы пост к 30-летию системы не получался совсем уж упадническим, напоследок скажу о позитивных изменениях, которые вижу за эти 10 лет.
Например, на руку Linux играет то, что за эти годы многое переместилось в браузер. И для пользователя при смене ОС всё привычнее, и набор доступного софта расширился веб-сервисами (так что можно, например, вместо GIMP использовать Photopea).
С геймингом стало заметно лучше, в основном благодаря Valve. Конечно, до Windows всё ещё как до Луны, но тенденция в последние годы очень оптимистичная. И хотя инициатива «Steam machines» под управлением SteamOS оказалась прикрыта, в этом году Valve анонсировали портативную игровую консоль Steam Deck тоже на Linux, так что есть причины для сохранения тенденции.
Наконец, ещё один прорыв: стало можно приобщаться к Linux прямо внутри Windows благодаря WSL. Важны и другие MS-движения в сторону опенсорса и консоли. По-моему, это всё отличные новости для Linux — возможно, самые лучшие из всех. И получается удивительная вещь: за последнее десятилетие никто столько не сделал для десктопного успеха Linux, сколько компания Microsoft.
Ну, спасибо и на том. С днём рождения, Linux. Надеюсь, к твоему 40-летию смогу написать более оптимистичный пост и рекомендовать тебя всем своим родственникам, а не только технически продвинутым.
Поскольку пост с острым мнением, на всякий случай уточню: это мнение лично моё, а не компании JUG Ru Group, где я работаю. А про компанию можно сказать вот что: мы не любим холивары, поэтому не спорим «какой язык программирования лучше», а проводим IT-конференции по самым разным языкам и технологиям: от C++ до JavaScript, от тестирования до дата-инжиниринга. Поэтому среди 8 конференций нашего осеннего сезона, скорее всего, есть подходящая вам (а то и не одна) — заходите на сайт проверить!