Доступен Wayland 1.18

Состоялся стабильный релиз протокола, механизма межпроцессного взаимодействия и библиотек Wayland 1.18. Ветка 1.18 обратно совместима на уровне API и ABI с выпусками 1.x, но дополнительно содержит порцию улучшений. Композитный сервер Weston 8.0, в рамках которого развивается кодовая база и рабочие примеры для использования Wayland в десктоп-окружениях и встраиваемых решениях, был опубликован в конце января.

Основные улучшения в Wayland 1.18:

  • Добавлена поддержка сборочной системы Meson. Возможность сборки при помощи autotools пока сохранена, но будет удалена в одном из будущих выпусков;
  • Добавлен API для разделения прокси-объектов на основе тегов, дающий возможность приложениям и тулкитам совместно использовать одно Wayland-соединение;
  • Обеспечено отслеживание таймеров сервера wayland в пространстве пользователя, что позволило исключить создание слишком большого числа файловых дескрипторов;
  • Добавлена функция wl_global_remove(), отправляющая событие удаления глобального объекта без его очистки. Новая функция позволяет исключить возникновение состояния гонки (race conditions) при удалении глобальных объектов. Подобные состояния гонки могли возникать так как клиенты не имели возможности подтвердить получение события удаления. Функция wl_global_remove() даёт возможность вначале отправить событие удаления и лишь после определённой задержки очистить объект.

Статус поддержки Wayland в приложениях, окружениях рабочего стола и дистрибутивах:

  • В Fedora обеспечена поставка по умолчанию сборки Firefox на базе Wayland. Решены проблемы с использованием проприетарных бинарных драйверов NVIDIA с Wayland.
    Реализована экспериментальная возможность автоматического запуска XWayland при попытке выполнения приложения на базе протокола X11.
    В Wayland-окружении добавлена возможность запуска X11-приложений с правами root под управлением XWayland. В SDL для Wayland решены проблемы с масштабированием при запуске старых игр, работающих в низких разрешениях экрана. Библиотека Qt для использования в окружении GNOME собрана по умолчанию с поддержкой Wayland;

  • В Red Hat Enterprise Linux 8 качестве рабочего стола предложен GNOME с применением по умолчанию дисплейного сервера на базе Wayland;
  • В предварительном выпуске GTK 4 в GDK продолжено внедрение API, разработанных с оглядкой на использование протокола Wayland. В GDK-бэкенд для Wayland добавлена поддержка portal-интерфейса для доступа к настройкам GtkSettings, а для работы с методами ввода предложена поддержка расширения протокола text-input-unstable-v3;
  • Запущен проект по избавлению GNOME от ошибок и недоработок, проявляющихся при работе поверх Wayland;
  • В XWayland добавлен GLX-обработчик на базе программного интерфейса EGL, который позволит исключить применение программного растеризатора swrast;
  • В числе целей разработки KDE на ближайшие два года упомянут перевод KDE на Wayland. Окружение KDE, работающее поверх Wayland, планируется сделать первичным, а окружение на базе X11 перевести в разряд опций и необязательных зависимостей. За отчётный период в KDE реализована поддержка дробного масштабирования при работе поверх Wayland. Cеанс KDE на базе Wayland адаптирован к работе с проприетарными драйверами NVIDIA. Появилась возможность перетаскивания в режиме drag&drop окон приложений, использующих XWayland и Wayland. В KWin обеспечена корректная прокрутка колесом мыши в окружении на базе Wayland;
  • В GNOME добавлена возможность автоматизировать запуск XWayland при попытке выполнения приложения на базе протокола X11 (ранее XWayland должен был выполняться постоянно);
  • Стартовала работа по портированию приложений пользовательского окружения MATE для Wayland. В MATE 1.24 для Wayland адаптирован просмотрщик изображений Eye of MATE и улучшена поддержка Wayland в панели MATE;
  • В Qt Wayland Compositor обеспечена поддержка протоколов linux-dmabuf-unstable-v1 и wp_viewporter. В компонентах платформы Qt для Wayland добавлена поддержка протокола fullscreen-shell-unstable-v1;
  • Опубликован Waypipe — прокси для протокола Wayland, позволяющий запускать приложения на другом хосте;
  • В пользовательском окружении Enlightenment 0.23 значительно улучшена поддержка работы под управлением Wayland;
  • Для Firefox реализован новый бэкенд для Wayland, использующий механизм DMABUF для отрисовки в текстуры;
  • В Ubuntu в окружении на базе Wayland обеспечена возможность запуска X11-приложений с правами root под управлением Xwayland;
  • Подготовлен набор патчей Wine-wayland и драйвер winewayland.drv, которые позволяют использовать Wine в окружениях на базе протокола Wayland, без применения XWayland и компонентов, связанных с X11;
  • Продолжается развитие Mir как композитного сервера для Wayland. В средствах для обеспечения запуска Wayland-приложений в окружении Mir увеличено число поддерживаемых расширений протокола Wayland. Проведена оптимизация производительности кода, связанного с Wayland, и добавлена новая графическая платформа «wayland», позволяющая запускать Mir в качестве клиента под управлением другого композитного сервера Wayland. Предложена экспериментальная поддержка динамического запуска X11-приложений в окружении на базе Wayland.
  • Сформированы новые выпуски пользовательского окружения Sway, использующего Wayland;
  • Дистрибутив Lubuntu наметил переход на Wayland на 2020 год. Поддержку Wayland планируется реализовать через портирование оконного менеджера Openbox на использование дисплейного сервера Mir, применяемого в качестве композитного сервера для Wayland;
  • Развивается Cage, композитный сервер на базе Wayland для запуска отдельных приложений в режиме киоска;
  • Продолжается работа над выпуском пользовательского окружения LXQt 1.0.0, главной задачей при разработке которого является доведение до полной готовности возможности работы поверх Wayland;
  • Система вывода в механизме для запуска виртуальных машин с Linux в ChromeOS предоставляет встроенную поддержку Wayland-клиентов (virtio-wayland) с выполнением композитного сервера на стороне основного хоста и возможностью эффективного использования GPU из гостевых систем;
  • Для FreeBSD развиваются порты, необходимые для сборки KDE с поддержкой Wayland;
  • В ОС DragonFly BSD развивается порт с Wayland и Weston, имеется поддержка XWayland;
  • Использующие Wayland пользовательские окружения papyros-shell и Hawaii объединились в новый проект Liri. Liri базируется на Qt 5 (QML) и продвигает оформление в стиле Material Design;
  • Wayland задействован по умолчанию в мобильных платформах Plasma Mobile, Sailfish 2, webOS Open Source Edition,

    Источник: opennet.ru

Добавить комментарий