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

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

★★★★★

Проверено: Shaman007 ()
Последнее исправление: Virtuos86 (всего исправлений: 9)
Ответ на: комментарий от Polugnom

Дык, драйвера нормальные не завезли. Они даже чёрный терминал без танцев с бубном нормально не отрисовывают в отличии от конкурентов.

Singularity ★★★★★
()

зачем это нужно, если иксы отлично работают, никаких проблем?

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

обычно на таких голосовалках отмечаются КДШники... между просмотрами аниме и твиттера

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

У тебя Оптимус же? Там вывод через Интел все равно идёт. Так что sway работает.

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

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

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

Когда поддержку Иксов запилят?

Никогда. Есть же i3.

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

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

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

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

А, ну тогда можно херить все остальные рынки. Два-то есть и хватит.

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

А мне не надо на нескольких дисплеях сразу его рисовать.

100% совместимость с i3*

Ну и кек мда конечно

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

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

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

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

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

Можешь зарепортить этот конкретный случай как баг

С другой стороны а как тут обеспечить 100% совместимость ? Что для sway будет primary дисплеем?

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

Уже сто раз про этот продукт писали же

Ты этим свой Layai генератор покорми.

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

XF86AudioPlay

А вот с этим совместимость в самом Sway обеспечена? Или на какой стороне оно работает (не работает)?

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

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

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

eternal_sorrow ★★★★★
() автор топика
Ответ на: комментарий от EXL

Так libinput(или кто-то другой) отдает мультимедиа кнопки, как я понимаю. Ничего из этого не менял от конфига i3 — все работает.

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

Not including tray icons

UPD: почитал по ссылке, там отредактировали и убрали. я переводил с e-mail'а.

eternal_sorrow ★★★★★
() автор топика
Последнее исправление: eternal_sorrow (всего исправлений: 1)
Ответ на: комментарий от EXL

С помощью atkbd или acpid можно сделать независимую от иксов и вяленого регулировку звука и яркости

Deleted
()

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

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

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

Меня просто смутили эти XF86-префиксы.

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

А то рынок консолей просран

В свиче нвидия и им норм.

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

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 ★★★
()
Ответ на: комментарий от Deleted

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

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

Ну это как то нудно. А есть GUI к NeoVim что бы можно было расширять его? Графики там рисовать к примеру. Ну или какое самое фичастое?

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

что бы можно было расширять его?

Любой на Electron.

Ну или какое самое фичастое?

Oni.

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

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

Difrex ★★★★
()

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

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

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

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

energetix_user ★★
()

Btw, а в нем можно прикрутить красивости в духе плавного shadowing-а при переключении воркспейсов, аналогичные которым предоставляются i3 + compiz?

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

waybar классный, зря ты так. его только немного настроить надо, поковырять конфиг и css. но меню в нём работает тоже хреново

eternal_sorrow ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.