LINUX.ORG.RU

Sway 1.0

 , , ,


1

4

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 не подвешивает систему.
  • В целом, большинство ошибок исправлено.

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

Ответ на: комментарий от qtm

Зато весь рынок аппаратного ускорения диплёрнинга и самоуправления в самоуправляемых автомобилях их, и денег в этом рынке столько, что графические карточки для домашних юзеров им теперь точно не в приоритете

kremator666 ()
Ответ на: комментарий от GT

Конфиг из i3. tray_output не указан. Но семантика отличается. В i3 указывается идентификатор primary (трей отображается на дисплее для которого ввполнен xrandr --primary). В sway название экрана из swaymsg -t get_outputs

Но в случае sway проще вообще убрать определение tray_output, поскольку в отличие от i3 он умеет корректно рисовать трей на нескольких дисплеях сразу

nomathere ()
Ответ на: комментарий от nomathere

Из новости с опеннета:

Совместимость с i3 обеспечена на уровне команд, файлов конфигурации и IPC, что позволяет использовать Sway в качестве прозрачной замены i3, использующей Wayland вместо X11.

И в чём тогда прозрачность такой замены? Где 100% совместимость?

GT ()
Ответ на: комментарий от khrundel

Если на АРМ, то обязательно нвидия. Кто ещё? PowerVR, сдохший сразу после того как Apple их оставила? Adreno? Mali?

какое отношение производитель видеочипа имеет к архитектуре процессора? почему говоря о GPU для консоли ты называешь производителей встроек для телефонов?

eternal_sorrow ★★★★★ ()

Экспериментальная поддержка проприетарного драйвера Nvidia была объявлена устаревшей с момента её добавления, и теперь полностью удалена. Используйте nouveau, а в будущем покупайте GPU у производителей, который поддерживают Open Source. Другие проприетарные драйверы также не поддерживаются.

Как лютый фанатик нвидии в недавнем прошлом, люто поддерживаю! Пусть эти зелёные гоблины сами пилят поддержку, как делают это для KDE https://phabricator.kde.org/D18570

Sunderland93 ★★★★★ ()
Ответ на: комментарий от alexferman

Eglstreams входит в стандарт, разработанный и принятый Khronos Group.

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

То есть, все эти компании сделали eglstreams

В мезе тоже есть eglstreams

https://www.phoronix.com/scan.php?page=news_item&px=XDC2016-Device-Memory...

https://blog.martin-graesslin.com/blog/2016/09/to-eglstream-or-not/

Freyr69 ★★★ ()
Ответ на: комментарий от alexferman

При чём тут буратины? Когда разрабатывали GBM Nvidia сказала что ей насрать и на Wayland и на Mir. А когда Wayland выстрелил - поздно спохватились. Но дело даже не в этом. Просто GBM плохо годится для нвидиевских GPU. Но это не значит что он - ни на что не годный вылосипед

Sunderland93 ★★★★★ ()
Ответ на: комментарий от nomathere

Пересобрал nm-applet, теперь иконка есть, но она не реагирует на клики мышки, это, кстати, обсуждалось в ПР с поддержкой трея. dbus меню не реализованно в swaybar, но работает вместе с waybar, который мне не нравится.

Difrex ★★★★ ()

Вроде ещё не высказывался в холиваре на тему длиннопостов автора про Nvidia.

Он то всё конечно правильно говорит, его вм действительно обязан поддерживать только то железо которое он хочет.

Вот только вся эта история по поводу «железо должно работать с моим софтом» лично мне дико напоминает наклеечки на железе в нулевых — «certified for Windows»

Неправильно это в общем.

energetix_user ()