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

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

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

Ни под что она не подстроилась. Как пилили свои упоротые EGLStreams, так и пилят, несмотря на то что их уже посылают прямым текстом все, начиная с Торвальдса и заканчивая разрабами тайлингов.

Если у кого-то Невидия нормально работает с Вялендом, то это не благодаря Невидии, а вопреки. И воспринимать это надо не как УМВР, а как «Ну пока еще УМВР, до следующей обновы»

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

Ок, запишем это как «полуподстроилась». Итак, под нвидию подстроился гном, кде пошли на компромисс, циннамон теоретически может из гнома портировать, какую там долю от 1% линупсоюзеров занимают оставшиеся?

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

Ни под что она не подстроилась

Разраб kwin сказал, что пилить поддержку eglstreams не будет, пусть nvidia пилит и шлёт ему патчи. Nvidia наняла инженера, который пилит поддержку. Вывод: nvidia подстроилась.

Как пилили свои упоротые EGLStreams, так и пилят

Всё правильно делают. Eglstreams это кроссплатформенный стандарт и вообще хорошая вещь. Это gbm - велосипед в лучших традициях злобных буратин.

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

Eglstreams это кроссплатформенный стандарт и вообще хорошая вещь.

Лол, знаем мы эти невидиевские «кроссплатформенные стандарты». Помнится в последних видюхах она перешла на FreeSync как раз от злобных буратин. Ибо такая «хорошая вещь» как G-Sync внезапно оказался нах никому не нужен. Когда такое же произойдет с EGLStreams - вопрос времени.

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

Если у кого-то Невидия нормально работает с Вялендом, то это не благодаря Невидии.

Аналогично, не благодаря вейланду. Представим, (вдруг!) нвидия лицензирует свои драйвера в опенсорс. Но вейланд же от этого лучше работать не станет. Может дело не в опенсорсе?

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

Если у кого-то Невидия нормально работает с Вялендом, то это не благодаря Невидии, а вопреки. И воспринимать это надо не как УМВР, а как «Ну пока еще УМВР, до следующей обновы»

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

знаем мы эти невидиевские «кроссплатформенные стандарты»

Я сомневаюсь, что ты что-то знаешь по теме. Eglstreams входит в стандарт, разработанный и принятый Khronos Group.

The Khronos Group was founded in 2000 by companies including ATI Technologies, Discreet, Evans & Sutherland, Intel Corporation, NVIDIA, Silicon Graphics (SGI), and Sun Microsystems. It now has roughly 120 member companies, over 30 adopters, and 24 conforming members.[3]

То есть, все эти компании сделали eglstreams, а потом злобные буратины запилили в mesa какую-то свою поделку под названием gbm. Ну и кто тут кладёт на стандарты и пилит велосипеды?

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

Всё это выглядит как «пошли трахаться, а то к старости с кошками останешься», сказанное зачуханом первой красавице в школе :)

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

Нинтендо Свищ на нвидии так-то. Собственно, АМД удалось отхватить консоли из-за CPU в комплекте и относительно неплохого GPU, и при этом очень скромной цене. Если АМД будет продолжать насиловать труп GCN, то перед консолепроизводителями встанет вопрос, не лучше ли немного переплатить и получить более быстрый и енергоэффективный GPU? К тому моменту высокопроизводительные арм-ядра будут не так уж сильно уступать x86, а программисты, благодаря vulkan, dx12 и современному консольному железу, уже будут уметь в жёсткий многопоток, так что вариант с чуть большим количеством ядер Cortex-A77 может оказаться предпочтительнее.

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

Если АМД будет продолжать насиловать труп GCN

Если консолепроизводителям понадобится более быстрый и енергоэффективный GPU

Если арм-ядра будут не так уж сильно уступать x86

Если программисты будут уметь в жёсткий многопоток.

Короче, если выполнятся все эти если, то рынок отойдет... Кому там? Ах, Cortex-A77. Вот только мякотка в том, что Cortex-A77 - это совсем необязательно Невидия.

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

Действительно, какой смысл использовать быстрые и энергоэффективне видеокарты, особенно когда кроме черного терминала да эмакса тебе от компьютера ничего не надо.

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

Щас бы в 2019 пекарню собирать. У людей ноуты, а там основная карта это Интел. Нвидия чисто как считалка стоит. Так что никаких проблем с вэйлендом не возникает

nomathere ()

А по теме почти все сказали: автор наркоман нвидияфоб, что, впрочем, лечится; не исключено, что кто-то додумается сделать форк и сделать поддержку нвидии, после чего поехавший вскроется.

Про опечатки тоже сказали.

Странно что никто не заметил, что трея у них до сих пор нет. Вообще, очень забавно это даже в новости выглядит:

у нас 100% совместимость!
ну, как 100%, вот этого нет и то не работает, но честно 100%!

Ожидаю фанатиков, которым и без ноги норм.

JAkutenshi ()

Экспериментальная поддержка проприетарного драйвера Nvidia была объявлена устаревшей с момента её добавления, и теперь полностью удалена.

Ну и хорошо. Юзаю nvidia только для CUDA, для вывода - Intel'овские карточки норм. Надо попробовать сабж, хотя я уж больно привык к qtile...

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

Стандарт то стандарт, да вот только для вайланда надо использовать нестандартные расширения от невидии типа EGL_NV_stream_remote, которые draft, ну такой себе кросплатформенный стандарт, завязанный на невидии, это кстати причина, почему EGLStream не добавляют в вайланд, ведь на невидии оно от этого не заработает, а на остальных работает и так. Если это не так, прошу продемонстрировать мне работу вайланд композиторов типа гнома на EGLStream на отличных от невидии карточках.

Когда кстати вышел первый стабильный EGL? Я не нашел чет. Раньше октября 2012 или нет? Если позже, тогда именно поэтому в вайланде заюзали gbm

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

Если АМД будет продолжать насиловать труп GCN

Вот с тут возразить нечего. Пока насилуют, при этом рассказывая каждый раз про новую архитектуру, но в какой-то момент могут выкатить что-то приличное.

Если консолепроизводителям понадобится более быстрый и енергоэффективный GPU

Как бы это очевидно. Вообще, всем этим соням выгоднее всего было бы десятилетиями сидеть на PS3 и зарабатывать на доле с продаж игр на многомилионную аудиторию и на продаже очередных «ещё более слим» версий, но народ, падла, хочет игры красивее, вот и приходится железо апгрейдить. Каждый такой апгрейд - это шанс потерять рынок, не от хорошей жизни на него идут.

Если арм-ядра будут не так уж сильно уступать x86

Так уже. Правда пока только ядра от Apple, но прогресс идёт. У A-76 уже до 4х команд за такт вроде. Сони, в случае чего, вполне в состоянии заказать разработку высокопроизводительного ядра ARM, продажи у них сравнимы с айфонами.

Если программисты будут уметь в жёсткий многопоток.

Уже, причём стараниями АМД. Процессоры у них хилые были, зато много ядер, вот и текущие поколения консолей все заточены под кормёжку GPU из нескольких потоков. И на PC, в то время как нвидия пыталась подстраиваться под ленивых разработчиков и старые однопоточные API и разносила внутридрайверовую обработку на несколько потоков, АМД просто молотили команды в том потоке, в котором эти команды получены, а в ответ на упор в CPU предложили пользоваться Mantle/DX12/Vulkan, в них можно иметь несколько очередей команд, по собственной очереди на каждый поток. Так что к моменту выхода PS6 у игровых разработчиков будет по 10 лет опыта работы в многопоточке.

то рынок отойдет... Кому там? Ах, Cortex-A77. Вот только мякотка в том, что Cortex-A77 - это совсем необязательно Невидия.

Если на АРМ, то обязательно нвидия. Кто ещё? PowerVR, сдохший сразу после того как Apple их оставила? Adreno? Mali? В общем, если AMD/Intel смогут предложить графику, тогда приставки останутся на x86. С армами имеет смысл связываться только ради нвидии. Та же нинтенда вон взяла довольно убогие армы + нвидия вместо крутых кастомных ядер от квалкома + адрено.

khrundel ()

краткое описание

А можно попросить в первых строчках новости добавлять описание в нескольких словах. Типа

sway - композитор Вейланд

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

Пруф на что? На то, что приведенного расширения нет в других драйверах?

расширение

https://www.khronos.org/registry/EGL/extensions/NV/EGL_NV_stream_socket.txt

муттер подтягивает libnvidia-egl-wayland.so.1

https://github.com/GNOME/mutter/blob/master/src/wayland/meta-wayland-egl-stream.c

libnvidia-egl-wayland вроде как эта штука

https://github.com/NVIDIA/egl-wayland

а вот тут оно используется

https://github.com/NVIDIA/egl-wayland/blob/master/src/wayland-eglstream.c

да и вообще по тем сорсам там много каких то штук с NV в названии

Я конечно могу ошибаться, к сожалению не силен в сях, и здесь прошу предоставить пруф моих ошибок.

Предложение запустить mutter на EGLStream на другом драйвере все еще в силе, ведь стандарт кроссплатформенный

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

Используя иксы ты теряешь fps.

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

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

А сабжу следовало активно поддерживать нвидию и делать свой графический сервер на-sway исключительно под неё. Это было бы правильным решением.

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

Всё это просто названия. Тем не менее, в той же Вики написано, что vega - это gcn 5го поколения, видимо АМД сами где-то это так назвали. Лично мне пофиг как оно будет называться и из чего состоять, пока оно не может показать что-то вменяемое, я называю это «насиловать труп GCN».

khrundel ()