Sway 1.0

good-penguin.png

Sway 1.0 (вместе с wlroots) включает 6,875 изменений от 205 контрибьюторов. Это первый стабильный релиз sway.

Изменения

  • Кодовая база полностью переработана. Некоторые особенности были изменены чтобы совпадать с поведением i3, в том числе со сломом обратной совместимости. Могут присетствовать ошибки, о которых разработчикам ещё неизвестно.
  • swaygrab удалён. Для скриншотов попробуйте grim, а для захвата видео wlstream.
  • Этот релиз зависит от wlroots 0.5 и убирает зависимость от wlc.
  • Этот релиз использует scdoc для генерации страниц man, и убирает зависимость от asciidoc.
  • Экспериментальная поддержка проприетарного драйвера Nvidia была объявлена устаревшей с момента её добавления, и теперь полностью удалена. Используйте nouveau, а в будущем покупайте GPU у производителей, который поддерживают Open Source. Другие проприетарные драйверы также не поддерживаются.
  • swaylock выделен в отдельный проект
  • swayidle, новый демон, управляющий состоянием бездействия, также доступен отдельно

Новые возможности

  • 100% совместимость с i3*
  • 100% совместимость с i3 IPC*
  • 100% совместимость с i3-gaps
  • 100% совместимость с i3bar**

* За исключением небольшого количества возможностей, которые сознательно не поддерживаются, такие как сохранение/восстановление раскладки и возможности, которые имеют смысл только в X11

** За исключением трея

Возможности sway

  • Добавлен swayidle, демон для управления DPMS и состоянием бездействия (например автоматической блокировкой экрана по таймауту) — man swayidle
  • Добавлен swaynag, замена i3-nagbar с дополнительными возможностями, не поддерживаемыми i3-nagbar — man swaynag
  • bindsym --locked добавляет сочетания клавиш, которые работают, пока экран заблокирован
  • Блоки команд теперь обобщённые и работают с любой командой
  • Прозрачность окна может быть настроена командой opacity
  • border csd явным образом включает декорации на стороне клиента
  • Атомарные изменения раскладки гарантируют, что при изменении размеров окон и подстройке раскладки, вы не увидите неполных кадров и частично отрисованных клиентов
  • Urgency hint из Xwayland теперь поддерживается
  • Отслеживание события damage значительно улучшает производительность CPU и энергопотребление
  • Аппаратные курсоры теперь поддерживаются, улучшая производительность
  • Бекенды Wayland, x11, и headless теперь поддерживаются для конечного пользователя, позволяя вложенные и безголовые сессии sway
  • Экранные клавиатуры, такие как virtboard теперь поддерживаются
  • Перемещение тайловых окон мышью теперь поддерживается и работает как предложенная возможность i3
  • Барьеры указателя теперь позволяют играм и другим приложениям захватывать курсор

Вывод на экран

man 5 sway-output

  • Поворот экрана (например output NAME transform 90)
  • Дробное масштабирование (например output NAME scale 1.5) — смотрите предупреждения в мануале
  • Окна могут быть перемещены мышью между экранами (и отображаться корректно, когда перемещаются между экранами с разными коэффициентами масштабирования)
  • Разрешение экрана теперь применяется через modesetting
  • Sway может работать на нескольких GPU
  • Поддержка последовательных цепочек DisplayPort (daisy-chained) и других экзотических конфигураций
  • Все клиенты sway (к примеру swaylock) корректно поддерживают HiDPI
  • Реализован новый интерфейс управления гаммой с широкой поддержкой аппаратного обеспечения* — смотрите этот патч redshift

* У некоторых пользователей могут быть проблемы с ошибками в драйверах, конкретно в некоторых конфигурациях AMDGPU

Ввод

man 5 sway-input

  • Раскладки клавиатуры и опции XKB могут быть указаны в файле конфигурации
  • Стабилизирована поддержка мультитач
  • Графические планшеты поддерживаются (частично — эмулируется мышь)
  • Можно указать статус num lock и caps lock при старте
  • Несколько устройств ввода может быть привязано к одному курсору (или нескольким курсорам)
  • Несколько клавиатур с разными раскладками могут использоваться взаимозаменяемо
  • Может быть настроено несколько рабочих мест (каждое со своими устройствами ввода и окном в фокусе)
  • Можно ограничить влияние устройств ввода конкретным экраном или областью экрана
  • Устройства ввода, которые создают события с абсолютным позиционированием (например графические планшеты) могут ограничить своё влияние регионом устройства ввода
  • Движения мыши и нажатия клавиш могут быть симулированы командами sway

Возможности wayland

  • Поддержка drag and drop
  • Мультимедийное содержимое (изображения, и т.п.) могут быть скопированы между Xwayland и Wayland
  • Реализован протокол главного выделения GTK (и синхронизируется с главным выделением Xwayland)
  • Реализован протокол layer-shell (что позволяет сторонние панели, блокировщики экрана, демоны уведомлений, и т.п.)
  • Разработан и реализован протокол захвата экрана в реальном времени (что позволяет в будущем сторонние инструменты для скриншотов и захвата видео с экрана)
  • Реализованы протоколы бездействия и запрета бездействия (что позволяет отключение экрана и запрет отключения к примеру видеоплейерами)
  • Реализовано и стандартизовано согласование декораций на стороне клиента/сервера
  • Поддерживается стабильный протокол xdg-shell

swaylock

man swaylock

  • Поддержка разных изображений на разных экранах
  • Внешний вид может быть настроен
  • Добавлен опциональный файл конфигурации

Разное

  • Xwayland теперь запускается только тогда, когда запускается клиент x11

Исправления ошибок

  • Исправлены все известные проблемы с xdg-shell (такие как размытые меню, которые не получают фокус)
  • Исправлены все известные проблемы с Xwayland (такие как странности меню Firefox)
  • Исправлены все известные ошибки HiDPI
  • Исправлены все известные ошибки swaylock и swaybar
  • Перезагрузка конфига не вызывает крашей
  • Переключение TTY не подвешивает систему
  • Вцелом большинство ошибок исправлено

>>> Подробности

©  Linux.org.ru