LINUX.ORG.RU

Вышел Wlroots 0.16

 ,


1

1

Wlroots — это набор самостоятельных компонентов и модулей для создания своего уникального композитного менеджера Wayland.

Изначально был написан для разработки SwayWM, но позже набрал популярность и стал использоваться при написании других WM: River, DWL, Cage, Wayfire и т.д. (с полным списком проектов можно ознакомиться здесь).

Основные изменения:

  • добавлена поддержка новых протоколов: ext-session-lock-v1, idle-notify-v1 и single-pixel-buffer-v1;
  • API сцены оптимизирован и добавлены новые функции;
  • реализована отрисовка с помощью Vulkan;
  • переработан API устройств ввода;
  • wlr_damage_ring заменяет wlr_output_damage, что уменьшает нагрузку на процессор;
  • реализована минорная версия xdg-shell, позволяющая изменять положение и размер всплывающих окон;
  • реализована высокая точность прокрутки колесом мыши;
  • реализована дополнительная версия 4 wlr_output_management-v1, в которой добавлена поддержка управления адаптивной синхронизацией (VRR);
  • сделан рефакторинг кода wl_surface и DRM.

Критические изменения:

  • произведён рефакторинг xdg-shell и устройств ввода;
  • разделены реализации wl_compositor и wl_subcompositor;
  • исправлены типы в layer-shell и добавлена поддержка v3;
  • xdg-positioner — обновлена и переписана логика.

Изменения отрисовки и внутреннего устройства:

  • новый механизм отрисовки разрешает создание текстур во время рендеринга;
  • новая реализация wlr_buffer;
  • замена wlr_texture_write_pixels и update_from_buffer.

Изменений много, полный список по ссылке ниже.
Сейчас происходит обновление проектов, зависящих от Wlroots. Разработчики описывают изменения как позитивно влияющие на производительность. Уже рекомендуют пробовать пользоваться своими WM.

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



Проверено: hobbit ()

В xdg-desktop-portal-wlr уже добавили возможность выбора отдельных окон для совместного использования или захвата? А то при использовании wlroots-композиторов до сих пор невозможно транслировать видеопотоком отдельное окно, а только весь рабочий стол.

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

Оно же не работает на невидии?

У тебя криокамера протекла?

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

Вот в xdg и спрашивай. Это либа для другого. Здесь для WM обновления, настолько хороши, что будет новая версия топовых. Была 0.1, а станет 0.2 (River).

Roy-Batty ()

Поправить надо, @hobbit.

С полным списком новшеств можно ознакомиться здесь.

С более ПОДРОБНЫМ списком ПРИЛОЖЕНИЙ …

Roy-Batty ()

@hobbit, подробности ведут не в ту сторону )) Надо сюда - https://gitlab.freedesktop.org/wlroots/wlroots/-/releases

Обнова реально даёт зелёный свет тому, что раньше бесило или плохо работало (ниспадающие меню мерцали и кушало в простое CPU, вроде должны были всё это починить в плане отрисовки)

Roy-Batty ()
Последнее исправление: Roy-Batty (всего исправлений: 1 )
Ответ на: комментарий от Roy-Batty

Мейнтейнер xdg-desktop-portal-wlr и мейнтейнер wlroots это один и тот же человек, если что. Ну и собственно да, невозможность транслировать отдельное окно реально бесит.

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

Мне пока фиолетово. Когда столкнусь с тем, что необходим Wayland, тогда и буду думать. Пока я видел только одну версию 1.x - это Sway. Если ты знаешь другие - welcome.

Roy-Batty ()
Ответ на: комментарий от Roy-Batty

А какой? Кроме Си?

А больше и нет. Если бы ещё разрабы KDE не были упёртыми баранами и поддержали KwinFT, использующий wlroots. Но нет, мы будем лепить свои костыли.

Xi_Jingping ()
Последнее исправление: Xi_Jingping (всего исправлений: 3 )
Ответ на: комментарий от posixbit

xdg-desktop-portal-wlr

Отдельный проект, не связанный напрямую с wlroots. Но нет, переформулировав твой вопрос на имеющий смысл, протокол для захвата отдельных окон ещё не добавили в wlroots.

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

У wlroots есть фатальный недостаток, который был исправлен в Smithay

Так толсто, что аж тонко :D

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

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

Хоспидя… я никогда не устану ржать с того, как Wayland пытаются обогатить очередным протоколом, потому что опять что-то забыли. Пятнадцатый год пошёл.

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

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

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

Если бы ещё разрабы KDE не были упёртыми баранами и поддержали KwinFT, использующий wlroots

А может и правильно сделали? Как по мне, так не стоит завязывать такой проект как KDE на библиотеку странного перца, который заставляет писать при запуске WM ключ my-next-gpu-wont-be-nvidia. А то мало ли что ему ещё в голову взбредет?

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

У меня kwinft вообще грузит чёрный экран вместо десктопа, ну его наф

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

Наблюдаю стабильную работу Wayland в Ubuntu 22.04 … это нормально?

Немножечко противозаконно вообще-то

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

Ещё божественные иксы могут отображать раскладку. Потому что внезапно, в Wayland для этого нет протокола. И ещё каждый тулкит должен сам рисовать себе курсор, потому что для этого протокола тоже нет. Ещё божественные иксы могут выводить тебе разрешение экрана через xrandr, потому что в Wayland нет угадай чего (есть wlroots, но это wlroots).

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

Прикинь, да? В этом и смысл. Иксы не в последнюю очередь являются тормозным неповоротливым говном, потому что архитектурно это - комбайн с кучей всякого криво прикрученного говна. Теперь задача по прикручиванию всякого говна лежит на разработчиках композиторов и DE, но есть шанс, что оно даже не будет тормозить. Спустя 15 лет, KDE рисуют картинку плавно, без тиринга, без приседания с композитором. Системы, которые оффтоп на этом форуме, 15 лет назад ещё могли.

Экран можно. Окно нельзя :D

Странно, в KDE можно. Уточнение: если приложение запросило именно окно, конечно. А то пойдёт опять всякая шиза типа «почему в списке экранов нет окон?».

Что не отменяет убогости Wayland. В линуксах по-другому не могут.

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

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

Нет, ты не понимаешь всей иронии ситуации. В каждом композиторе эти фичи есть, тока они все друг с другом несовместимы.

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

А нахрена это нужно в дисплейном сервере

Потому что в Wayland раскладкой рулит композитор. И то есть задавать ты её можешь, а смотреть – нет :D

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

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

Всё именно так. Каждый строитель упорот по своему ))

Roy-Batty ()
Ответ на: комментарий от cumvillain

Нет, ты не понимаешь всей иронии ситуации. В каждом композиторе эти фичи есть, тока они все друг с другом несовместимы.

И получается Wayland - это зоопарк говна, а в Xorg одна стандартизированная реализация. Азаза.

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

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

У Wayland есть лишь один фатальный косяк - разработчики изначально не озаботились составить набор нужных протоколов для обычного десктопа (показ экрана, индикация раскладок и т.д.). В остальном критика иксоводов высосана из пальца.

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

Не, иксы - такой же зоопарк говна, только в единственном экземпляре

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

Отличная штука. Ждем порта на иксы.

зачем в х-сах всё работает и xdotols в том числе

s-warus ()
Последнее исправление: s-warus (всего исправлений: 1 )
Ответ на: комментарий от geraet4501

тебе не нужно и не переживаешь управление окнами по примеру devilspire2, и еще куча штучек вроде эмуляция мыши клавиатуры в xdottools

s-warus ()
Ответ на: комментарий от Skullnet

а в Xorg одна стандартизированная реализация

Ну как тут не запостить нетленку стандартизированной реализации?

X имеет четыре подсистемы ввода: базовый протокол X11, Xinput 1.0, Xinput 2.0, Xinput 2.2. Xinput 1.0 канул в Лету, но оставшиеся три остаются взаимосвязанными. Daniel Stone описал это так: «Есть всего три человека, которые действительно понимают, как подсистемы ввода уживаются вместе… И я бы хотел не быть одним из них».

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

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

По поводу xdotool: https://arewewaylandyet.com/

User input simulating tool: wtype, ydotool

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

У Wayland есть лишь один фатальный косяк - разработчики изначально не озаботились составить набор нужных протоколов для обычного десктопа (показ экрана, индикация раскладок и т.д.). В остальном критика иксоводов высосана из пальца.

Wayland изначально делался под GNOME, чтобы был один монопольный GNOME композитор, а остальные - делайте что хотите, поэтому в Wayland нет фич, а все фичи в композиторах. Потом начали придумывать всякие wlroots, чтобы хоть как унифицировать зоопарк, но это не единственная проблема: https://dudemanguy.github.io/blog/posts/2022-06-10-wayland-xorg/wayland-xorg.html

Skullnet ★★★★ ()
Последнее исправление: Skullnet (всего исправлений: 2 )

Они с mpv или mpv с ними договорятся блочить скринсейвер пока видео воспроизводится в mpv?
Или это не туда?

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

Так оно блочит. Вот часть с idle как раз довольно кошерно реализована.

cumvillain ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.