Найти в Дзене

Как разработчики GNOME подставили пользователей, которые любят кастомизировать рабочее окружение

Оглавление

Неоднократно говорил о том, что считаю среду рабочего окружения GNOME одной из своих любимых и стараюсь по возможности использовать ее на любых дистрибутивах, которые попадают в руки и на устройство.

Кроме того, уже тоже много раз рассказывал про то, что люблю кастомизировать поставляемое разработчиками рабочее окружение: установить какую-нибудь интересную тему, изменить цвета, иконки, шрифты. Пока нет того идеального варианта оформления, достигнув которого я бы остановился, но я в процессе.

И в один прекрасный момент, разработчики GNOME одним движением руки, отправляющей обновления к пользователям, убили частичку веры в себя и DE, а также возможность что-либо кастомизировать.

GTK3 и GTK4: постепенный переход

В GNOME используется библиотека GTK, которая позволяет создавать элементы интерфейса и настраивать взаимодействие между ними и между интерфейсом и пользователем. Долгое время GNOME использовал третью версию этой библиотеки, но в марте 2021 года начался переход на GTK4. Через два года разработчики заявили, что пользовательская оболочка GNOME Shell и композитный менеджер Mutter полностью переведены на использование библиотеки GTK4 и избавились от жёсткой зависимости от GTK3.

При этом, часть приложений для GNOME по-прежнему разрабатывались и продолжают разрабатываться с использованием третьей версии библиотеки. Получается, что чисто гномовские приложений в массе своей закончили переход на новую версию библиотеки (но часть из них по-прежнему связана с GTK3), а вот пользовательские приложения (то есть те, которые разрабатываются кем-то со стороны) остались на уже устаревшей (для GNOME) версии.

Libadwaita и форсирование перехода

Элементы пользовательского интерфейса для приложений GNOME разрабатываются в специальной библиотеке под названием Libadwaita. Грубо говоря, это редактор, где разработчики могут создать кнопочки, менюшки, курсоры и прочие элементы интерфейса, которые впоследствии будут отрисованы на экране при помощи библиотеки GTK.

Libadwaita 1.0
Libadwaita 1.0

Первый релиз Libadwaita состоялся в 2022 году, то есть, в момент, когда шел активный переход с GTK3 на GTK4. Можно даже сказать, что появление Libadwaita приурочили к постепенно идущему процессу перехода, чтобы разработчики приложений для GNOME использовали эту программу для создания интерфейсов в новой версии GTK. И они стали использовать но...

Прощай кастомизация

С момента выпуска GNOME 43 все больше и больше встроенных приложений теперь используют Libadwaita, при этом ее особенностью является то, что она не поддерживает пользовательские темы. Как было в приложениях, основанных на GTK3?

Я устанавливал дистрибутив с GNOME, скачивал приложение GNOME Tweak, включал в нем расширение User Themes и скачивал интересные темы, которые применялись ко всей системе.

Теперь же при изменений темы оформление меняется исключительно у приложений, разработанных под GTK3, те приложения, которые используют GTK4 и Libadwaita внешний вид не меняют - не помогает ни GNOME Tweak, ни Dconf.

Ситуация получается одновременное смешной и ужасной: после применения темы терминал GNOME выглядит в соответствии с темой, а файловый менеджер и (почему-то) Firefox выглядят как обычно, без стилей этой темы. Об этом, я кстати, писал ранее на канале, даже было решение, но у него есть огромные недостатки..

Проблема решаема, но решение является костылем

Единственным, на данный момент, решением проблемы является перезапись файла gtk4.css, который отвечает за оформление приложений на GTK4. Но это костыль, так как это, по сути, вмешательство туда, где его быть не должно. После такого вмешательства окружение, например, может начать глючить и не сможет переключать темный и светлый режимы.

Получается, что разработчики унифицировали и монополизировали внешний вид GNOME - он теперь нормально отображается только при теме Adwaita и ее форках, любые другие пользовательские темы не будут полноценно работать и менять внешний вид дистрибутива.

Обидно, досадно и как бы не совсем ладно..

Повторюсь, что люблю GNOME как рабочее окружение, очень хочу его использовать постоянно, но подобные фортели, выкидываемые разработчиками только отталкивают от DE. Разработчики будто бы говорят: тебе не нужно ничего кастомизировать, мы сделали для тебя Adwaita, пользуйся только ей!

Такими темпами можно дойти до того, что в очередной версии GNOME уберут поддержку расширений и пользователи будут использовать только то, что предоставили разрабы, не имея возможности настроить среду под себя. Ну а это уже, простите, попахивает Windows, где пользователю скинули скромные возможности кастомизации в виде выбора между светлым и темным режимом и выбором цветового оттенка.

Может поэтому в свое время разработчики окружений Cinnamon и MATE решили отделиться от GNOME (в момент перехода его со второй версии на третью) и пошли отдельным путем, предугадав то, куда разработчики могут завести DE?