Либадвайта, библиотека раздора

фото людей боксирующих

libdadwaita — это библиотека разногласий, которая заставила Budgie полагаться на другую библиотеку.

Почему Ubuntu удалил цвет баклажана из своей цветовой палитры? Почему главный разработчик проекта Budgie решил отказаться от GTK и перейти на ELF для будущих версий рабочего стола? Ответ — библиотека под названием libadwaita.

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

Что такое либадвайта, библиотека раздора, и для чего она нужна?

Начнем с определения некоторых понятий:

Библиотека — это компьютерная программа, которая выполняет функцию или предоставляет компоненты для конкретной задачи., например, отображение сообщения во всплывающем окне. Библиотеки используются разработчиками программ, которым необходимо реализовать эту конкретную функцию для экономии времени кодирования. Кроме того, поскольку большинство библиотек устанавливаются независимо, их могут вызывать другие программы, экономящие место на диске.

GTK — это набор библиотек виджетов, используемых для создания пользовательских интерфейсов.. Он используется GNOME, Mate, Cinnamon и другими. А также производители приложений для этих настольных компьютеров.

Adwaita — название языка дизайна среды рабочего стола GNOME и его тема по умолчанию. До 2021 года тема Adwaita входила в состав GTK Widget Toolkit. В том же году было решено перенести компоненты в новую библиотеку под названием Libadwaita, которая должна реализовывать директивы пользовательского интерфейса GNOME.

Судя по всему, намерения были благими. По словам Адриана Плазаса, инженера-программиста GTK и создателя приложений для GNOME:

Это позволит GTK расти независимо от GNOME со скоростью, которая соответствует вашим потребностям. Вы можете уменьшить свое внимание к более общим виджетам и вашему основному механизму, упростив поддержку вашей темы в процессе, чтобы сделать ее более гибкой. Это, в свою очередь, даст другим пользователям GTK равные условия: с точки зрения GTK, GNOME, Elementary и Inkscape ничем не будут отличаться, и эта гипотетическая библиотека GNOME будет выполнять ту же роль, что и Elementary Granite.

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

Но, мы уже знаем, чем вымощена дорога в ад.

Проблема в том, что если вы устанавливаете приложение, которое имеет Libadwaita в качестве зависимости, вам придется использовать его с темой Adwaita по умолчанию, нет возможности переключиться на другую тему. Конечным результатом является то, что если вы используете рабочий стол на основе GTK4, ваши настройки темы будут проигнорированы.

По словам Джошуа Стробла, ответственного за рабочий стол Budgie:

…когда инженер System76 предложил некоторые улучшения API изменения цвета libadwaita, который является их альтернативой темам, специфичным для изменения цвета различных элементов приложений GNOME и зависящим от приложения (а не от приложения) для всей системы, эти улучшения были отклонены на том основании, что некоторым разработчикам GNOME не понравилось мнение, выраженное инженером в социальных сетях.

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

GNOME 42

На прошлой неделе GNOME 42 выпустила бета-версию.к. Среди его новых функций — увеличение количества приложений, перенесенных на GTK4 и libadwaita, встроенная функция захвата экрана (фото и видео) и новая панель «Внешний вид» с поддержкой светлого и темного стилей.

Первые крупные дистрибутивы с GNOME 42 будет Fedora 36 (19 апреля) и Ubuntu 22.04 (21 апреля)

 

 


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.