LINUX.ORG.RU

Ext-transient-output: новый Wayland-протокол для удалённого управления

 ,


0

4

Разработчик Wayland Саймон Сер (Simon Ser) запросил слияние для внедрения нового протокола ext-transient-output. Этот протокол предназначен для удаленного управления программным обеспечением, таким как серверы VNC, в среде Wayland.

Ext-transient-output аналогичен ext-transient-seat, но работает с Wayland-выходами (wl_output). Ext-transient-seat позволяет привилегированным клиентам динамически создавать независимые рабочие места, которые полезны для программного обеспечения удаленного рабочего стола и VNC. Ext-transient-output поддерживает динамический вывод для таких клиентов, позволяя перехватывать виртуальные выходные данные с помощью ext-image-copy-capture и отображать их на удаленном устройстве.

В запросе на слияние описывается следующий принцип работы протокола: «Привилегированные клиенты могут использовать временный протокол вывода для создания независимых виртуальных выходов, которые будут удалены из компоновщика после уничтожения объекта».

Протокол совместим с протоколами захвата изображения, такими как ext_output_image_capture_source_manager_v1, и используется для сценариев удаленного взаимодействия.

Особенностью протокола является создание глобальной переменной wl_output, не привязанной к конкретному аппаратному устройству.

В настоящее время существует экспериментальная реализация ext-transient-output для библиотеки компоновщика wlroots, представленная в виде черновика запроса на слияние.

>>> Источник (Phoronix)



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 3)

Это, конечно, на грани «новости о намерениях», но поскольку Simon Ser – не последний человек в Wayland-разработке, я всё же подтвержу, есть весьма ненулевая вероятность, что протокол будет принят.

Что ж, новость хорошая. Wayland продолжает потихоньку эволюционировать от изначального «вам этого не нужно, потому, что НИБИЗАПАСНА» ко вполне рабочему решению для десктопной графики. Конечно вновь встаёт вопрос, а нельзя ли было сразу вместо всех этих ломок сделать какой-нибудь X14, который умеет всё, что умеют иксы, и при этом содержит нормальную систему прав – ну уж ладно. Это опенсорс, не сделали потому, что не нашлось желающих и умеющих.

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

Это, конечно, на грани «новости о намерениях», но поскольку Simon Ser – не последний человек в Wayland-разработке, я всё же подтвержу, есть весьма ненулевая вероятность, что протокол будет принят

Поддерживаю (наверное лучше как мини). Но я бы добавил, что помимо имени разработчика немаловажно, что код уже есть, а не просто кто-то (пусть даже очень крутой) предложил просто что-то обсудить и потом может быть запилить. Когда фича уже реализована в коде — это уже не просто намерения. Ну то есть, о мердже в апстрим — намерение, конечно, но новость содержит и информацию о существующем проекте, который не является намерением, а является уже вполне воплощённым в коде трудом.

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

вам этого не нужно, потому, что НИБИЗАПАСНА

Не было никогда разговоров про НИБИЗАПАСНА. Не хотели приколачиваться к конкретной реализации конкретной пиксельной сетки, с которой бы потом не застряли - как это получилось в иксах, из-за чего там принципиально невозможен разный DPI на разных мониторах и независимое дробное масштабирование.

нельзя ли было сразу вместо всех этих ломок сделать какой-нибудь X14

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

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

liksys ★★★★
()

@CrX почему бы методы (ext_output_image_capture_source_manager_v1, wl_output, ext-image-copy-capture) в новости не выделить апострафами для удобности восприятия информации? Даже ИИ лучше справилось бы, чем @hobbit.

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

наверное лучше как мини

Так и сделал.

помимо имени разработчика немаловажно, что код уже есть

Разумеется, это тоже сыграло роль.

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

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

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

вместо всех этих ломок сделать какой-нибудь X14

Не боись - в Wayland тоже найдут критический недостаток и дружно кинутся его ломать.

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

Не боись - в Wayland тоже найдут критический недостаток

Да это-то понятно. Даже я сходу могу назвать целых два: 1) Wayland создал не Поттеринг; 2) эталонная реализация сделана не на Rust (хотя последнее могут исправить и без ломки). :)

hobbit ★★★★★
()

Чочо, «дыры в безопасности» таки проносят в контрабасах обратно, только правильно бюрократически оформленные?

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

Wayland создал не Поттеринг

Он бы нормально сделал. У всех был бы единый сервер с полным фаршем фич, фрикам осталось бы только прикручивать тайлинг и панельки. Где-то я такое видел уже.

bread ☆
()
Ответ на: комментарий от liksys

Не хотели приколачиваться к конкретной реализации конкретной пиксельной сетки

Зато захотели приколачиваться к невозможности приложения взаимодействовать с окнами и к {чудацкой} реализации управления фреймрейтом.

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

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

Да я согласен. Можно было бы и единую библиотеку виджетов сделать, работающую на стороне сервера (но при этом допускающую навешивание внешних плагинов стилизации).

Короче, можно было не выбрасывать достижения x11, а наоборот, добавить ещё больше стандартных вещей, чем было у иксов. Как с systemd, да.

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

systemd

Кстати, его тоже надо бы переписать. Сделать systemd-protocol и 100500 кое-как совместимых реализаций)

devl547 ★★★★★
()

Объясните мне одно: эта фича позволит нормально достучаться к новым KDE (wayland-only) на headless-виртуалке по RDP?

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

Это, конечно, на грани «новости о намерениях», но поскольку Simon Ser – не последний человек в Wayland-разработке, я всё же подтвержу, есть весьма ненулевая вероятность, что протокол будет принят.

Я бы не обольщался. Принять может и примут, вот только перед этим пару лет будут толочь воду в ступе. Под соусом «мы хотим чтобы была обратная совместимость», а на самом деле просто от нежелания что-то делать.

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

Можно было бы и единую библиотеку виджетов сделать, работающую на стороне сервера (но при этом допускающую навешивание внешних плагинов стилизации).

У разных приложений свой набор виджетов, и их нужно еще как-то кастомизировать. Что если тебе потребуется поставить кнопки поверх поля для ввода текста? Или сделать так, чтобы они следовали за курсором? И вот тебе уже нужное полноценное API для лейаутинга. А если его не хватает, то что?

Со стилизацией то же самое. Стилизация гнома с кедами несовместима по причине того, что у гнома свой неповторимый взгляд на UI, в котором существуют цветовые роли, которых нет в KDE, и наоборот.

И следующие десять лет тратится на то, что бы сделать полноценную гуевую либу, только на стороне сервера. А потом всё равно приходит браузер и рисует кнопки растрами, потому что ему так проще рендерить картинку. И Qt с GTK тоже будут рисовать растр, потому что юзерам захочется не просто кастомный дизайн, а кастомный виджет, которого раньше не было в природе. И сочетать рендер этого с серверной библиотекой никому не захочется.

Ерунда это всё. Практика иксов показала, что это абсолютно никому не нужно. Иксы умели рисовать графические примитивы, и даже этой функцией перестали пользоваться, потому что растр - это проще и универсальнее. Потому в вяленде так и сделано: это тот уровень, который устраивает всех, чтобы поверх него городить свои виджеты для взаимодействия с юзером.

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

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

Ох и намешано у тебя в голове…

Растр никому не нужно в квадрате. Сейчас рулят шейдеры — и роль у вейланда остается только GPU-контекст бутстрапить.

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

Сейчас рулят шейдеры — и роль у вейланда остается только

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

Растр никому не нужно в квадрате

Итоговый вариант-то один хрен растровый буфер, не?

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

Ох и намешано у тебя в голове…

У тебя, конечно же.

Растр никому не нужно в квадрате.

Точно не нужно? И wl_shm не существует? Я понял твой уровень понимания вяленда, можешь не продолжать и покинуть дискуссию.

Сейчас рулят шейдеры — и роль у вейланда остается только GPU-контекст бутстрапить.

Это еще один низкоуровневый способ рисования графики, который точно так же подтверждает мои слова: серверные виджеты никому не нужны.

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

Гонять растровый буфер туда-сюда между GPU и CPU — не самая умная идея.

Есть предложение ознакомиться с терминами GBM|dma-buf|DRM/KMS.

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

Конечно вновь встаёт вопрос, а нельзя ли было сразу

на западе в моде извращения, lgbt там всякое, diversity, поэтому надо было сделать через жопу чтоб ментально попущеные minorities чувствовали себя inclusive в процессе разработки.

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

что это абсолютно никому не нужно

Вендовый GDI с тобой не согласен. Очень редкие инвалиды делают софт под венду на растрах. Я почти уверен, что тот же Qt рисует под капотом через примитивы GDI.

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

Мне совершенно плевать на костыли микрослопа.

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

В линуксе такого не было изначально, а примитивы иксов по итогу оказались никому не нужны.

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

зачем на стороне сервера делать виджеты я не понимаю, такое может предложить разве что человек который gui-приложения не писал. любая нетривиальная стилизация или нестандартные контролы станет невозможной.

В то же время есть игровой движок ravengine, который содержит html-gui, без скриптов, легкий, с ускорением, навешивается даже на SDL. Стилизацию можно запилить буквально через глобальный CSS.

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

Очень редкие инвалиды делают софт под венду на растрах.

dwm, насколько я помню, оперируют тем же растром (ну, с текстурами, если быть точным, и вообще принцип устройста wayland-композитора с виндовым dwm похожи). То что там сверху хреновертят системные тулкиты (там ведь на только GDI, да) это ему несколько монопенисуально.

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

любая нетривиальная стилизация или нестандартные контролы станет невозможной

Чой-та вдруг? В винде, например, для нестандартных контролов переопределяется оконная функция – и в путь. Ну и рекомендую подумать над оценкой доли этих самых нестандартных контролов в реальных проектах. Я, например, стараюсь их сводить количество к минимуму, UI должен быть ПОНЯТЕН пользователю. На что там плевались из-за мозголомных ползунков, на DarkTable, кажется?

А нетривиальную стилизацию тем, кому уж очень надо, можно сделать через плагины, как я писал выше.

Я обеими руками за то, чтобы был механизм для реализации нестандартных вещей – но вот стандартные вещи надо иметь возможность делать максимально просто. По части GUI в MS это вовремя поняли и закатали в системную DLL. И зоопарк тулкитов там не нужен, полноценное GUI в винде можно делать небольшими усилиями на голом API. Вот с командной строкой у них традиционно хуже.

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

а если мне надо 3д-вьюшку вставить? а если график? если все виждеты черт знает где, ничего этого сделать не возможно.

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

По части GUI в MS это вовремя поняли и закатали в системную DLL.

MS какбы контролирует СВОЮ систему и в принципе не спрашивает, кто там и чего хочет. Как ей надо, так и сделали. В наших пенатах, когда только в среде wayland-композиторов минимум три сильных конкурента, а в среде DE минимум два крупных - это, очевидным образом, невозможно. То что они договариваются между собой, как оно будет работать - уже хорошо.

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

А вот тут с точность до наоборот вместо того, чтобы, да, медленнее, но зато для всех улучшать X-сервер, предлагается быстро и удобно, но только для GTK+ 2 использовать преимущества своего стека, находящегося под своим контролем:

https://www.osnews.com/story/9609/gtk-goes-cairo-owen-taylor-on-xcairogtk-integration/

А, ведь, тогда разработчики X-сервера могли бы запротестовать, что не надо делать pango, cairo, и гонять растр, а надо это всё (годами) стандартизировать и разложить по полочкам в X-сервере.

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

1) Wayland создал не Поттеринг

Я б не удивился, если бы при руководстве Поттерингом цикл от «глючная не рабочая ни с чем не совместимая фигня» до «норм штука, есть не просит» прошёл бы гораздо быстрее. Учитывая то, что всё-таки то, что делал Поттеринг, всё-таки должно было by design становиться «норм штука, есть не просит», а не адской болью.

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

А что делать... Это при том, что kvantum - абсолютно векторный движок для Qt. Работает лучше и быстрее пиксельных.

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

Я не понял, в чём проблема.

вот именно что. так не работает. где-то со времен появления DRM и ухода xfree86

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

легкий, с ускорением,
запилить буквально через глобальный CSS.

Ахахахахаха.

Ты же в курсе, ЧЕМ тормозят большие и тяжёлые странички в web?

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

примитивы иксов по итогу оказались никому не нужны.

4.2 мой wm ими пользуется для рисования таскбара.

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

Так тормозит не javascript (ок, тормозят ошибки с текущей памятью, но сейчас такого почти не встречается). Тормозит... Та-дам... Парсинг CSS. Вернее, ты не замечаешь, как он тормозит: он просто ЖРЁТ ЦП. И если ЦП зватает, ты ничего не заметишь. А если нет - у тебя страница встанет колом.

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

не про веб. а про возможность сделать вебморду с С++ вместо жабоскрипта внутре

Этого мало. Надо accessibility для слабовидящих, надо работу целиком без мышки.

Cледующий проект думаю будет с двойной системой: вебвью для красивостей, и фолл-бэк на common controls 6.0 для систем старее вин10, для облегченных систем и для кейсов с accessibility.

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

надо работу целиком без мышки.

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

Qui-Gon ★★★★★
()
Ответ на: комментарий от liksys

Зато нужны глобальные хоткеи и возможность нормально шерить и грабить экран без плясок с бубном и пайпварью.

И абсолютные координаты мышки.

Qui-Gon ★★★★★
()
Последнее исправление: Qui-Gon (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.