LINUX.ORG.RU

Продемонстрирован запуск KWin на Wayland/Weston

 , ,


1

1

Martin Gräßlin

This week I decided to do some research for the Wayland porting of the KDE Plasma workspaces. One of the features we will need in future is a Wayland session compositor which runs nested on a Wayland system compositor. Of course one could think of setups without a system compositor, but overall I think that a nested compositor simplifies the setup and allows to have all the low level technologies in one place without duplication in all the various compositors. +1 for working together.

KWin also gets input from Wayland and passes it to the X Server. That’s the reason why we can see mouse interaction and working keyboard.

Описание реализации:

  • OpenGL-бэкенд:
    KWin поддерживает несколько бэкендов для обработки данных OpenGL и преобразования растровых изображений в текстуры. В настоящее время реализованы бэкенды GLX и EGL. Оба они создают OpenGL-данные в окне XComposite и преобразовавают растровое изображение в текстуру с GLX через расширение GLX_EXT_texture_from_pixmap или в случае EGL через EGL_KHR_image_pixmap.

    Добавлена новая подсистема реализации OpenGL поверх Wayland. Эта подсистема является форком EGL с тем отличием, что в ней нет кода X, из-за чего реализация работы растровых текстур несколько усложнилась. Расширение, используемое в «стандартной» EGL на X11 серверной недоступно. В качестве правильного решения указано использование XWayland, но это пока что слишком рано, поскольку KWin всё еще не поддерживает Wayland-клиент.

    Решение, реализованное Мартином, было сделано на основе Fallback-механизма в KWin запускающегося в случае неработоспособности GLX_EXT_texture_from_pixmap: использование XShm для копирования содержимого растрового изображения в текстуру OpenGL. Не очень здорово, но работает. (Not a nice solution but it works.)

  • Ввод:
    Метод ввода является «a rather hackish solution», до тех пор, пока XWayland не будет запущен. Поэтому приходится направлять все входные события на XServer с расширением XTest для работы с так называемыми «fake events». Эта реализация просто ужасна сама по себе, и благодаря этому можно увидеть устарелость и ограниченность реализации X. Martin Gräßlin, как он сам пишет, был весьма удивлен, что данный механизм вообще сработал. На момент написания оригинала статьи код поддерживает сигналы клавиатуры, ЛКМ, СКМ и ПКМ. С колесом же мыши пока ещё наблюдаются проблемы.

    Также разработчики не в состоянии реализовать синхронизацию положения курсора мыши между Х и Wayland. Поскольку протокол Wayland разительно отличается от XWarpPointer, так что в любой момент можно получить «рассинхрон».

Собственно, сама демонстрация (YouTube)

Более подробную информацию относительно сборки, тестирования и планов проекта на будущее Вы можете получить из оригинала новости.

★★

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

Имхо не тянет на главную, хоть и интересная новость.

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

Если интересная, то тянет по крайней мере на мини-новость, но это уже как модератор решит

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

Чтобы она тянула хоть на что-то, её по крайней мере надо целиком перевести на русский.

Ramen ★★★★ ()

Это они после демонстрации Unity на Mir зашевелились?

firestarter ★★★☆ ()

Зачем нужно такое «портирование» через XWayland? Нужно пилить полноценный порт без костылей.

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

Спасибо анон, я совсем забыл про видео в процессе перевода :)

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

Шевелиться всё началось с выходом Wayland 1.0, но всем то пофиг, не видно же, где что там внутри, а громкие заголовки это еда.

Deleted ()

Они 100% ждали ролика канониклов :-)

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

Чтобы она тянула хоть на что-то, её по крайней мере надо целиком перевести на русский.
Чтобы она тянула хоть на что-то, она должна быть об убунте.

//fixed

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

Это они после демонстрации Unity на Mir зашевелились?

зашевелились

Больше похоже на подёргивание агонизирующего тела.

UNiTE ★★★★★ ()

а как там будет с вводом в этом вашем Вяленде? так и будет что-то хэкиш? или иксы чисто для ввода будет?

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

Зачем нужно такое «портирование» через XWayland? Нужно пилить полноценный порт без костылей.

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

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

Это они после демонстрации Unity на Mir зашевелились?

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

I-Love-Microsoft ★★★★★ ()

Насколько я понял, в будущем kwin будет маленькими иксами, работающими с вейландом. С нетерпением жду октябрь 2013, посмотреть на мир.

linuxhater ()

я нифига не понял, можно для тупых в двух предложениях

RedPossum ★★★★★ ()

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

У меня складывается ощущение что они раскопали какой-то артефакт древней, могущественной цивилизации и тыкают его палкой.

ritsufag ★★★★★ ()

Хм...А в чем бенефит, все же, перед обычными иксами?оО

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

А в чем бенефит, все же, перед обычными иксами?оО

Мода. Fashion driven development же.

tailgunner ★★★★★ ()

Ну, знаете, на видео с mir'ом была видна приличная скорость анимации, а тут ничего особенного, ни скорости перемещения окон, ни скорости ресайза, ни скроллинга быстрого... Профанация какая-то, да и запущено, как я понял, через костыли.

Jurik_Phys ★★★★★ ()

This week I decided to do some research for the Wayland porting of the KDE Plasma workspaces. One of the features we will need in future is a Wayland session compositor which runs nested on a Wayland system compositor. Of course one could think of setups without a system compositor, but overall I think that a nested compositor simplifies the setup and allows to have all the low level technologies in one place without duplication in all the various compositors. +1 for working together.

KWin also gets input from Wayland and passes it to the X Server. That’s the reason why we can see mouse interaction and working keyboard.

На этой неделе я решил сделать некое исследование портирования KDE Plasma на Wayland. Одна из особенностей, которая нам пригодится в будущем — это композитор сессий Wayland, но в общем, я думаю, что встроенный композитор упрощает установку и позволяет собрать все низкоуровневые технологии в одном месте, избавляя от дупликации сущностей. +1 за унификацию. KWin получает данные на вход от Wayland и отдает их X Server'у. Вот причина, по которой вы можете наблюдать корректную работу мыши и клавиатуры.

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

да и запущено, как я понял, через костыли

В демо видео с миром вроде не было описания технических подробностей. Еслиб Мартин не написал подробно про все аспекты запуска, мало ктоб узнал про эти костыли.

Behem0th ★★★★★ ()

Вангую запах жареного после выходных

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

Но он написал и их можно обсудить. Так что, давай без если бы, да кабы, был бы дед, бабкой, мы знаем. Он сказал и все.

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

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

Меня возмутило это «Профанация какая-то».

Это не серьезно.

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

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

Так зачем тогда выгораживать одно, принижая другое?

Конечно, то что при демки мира, дали мало инфы, это минус, но это не значит, что там запуск был через костыли костыльные. Может же быть наоборот? Может!

ihappy ()

И Mir тем временем уже дошёл, оказывается, аж до версии 0.0.3, а тут ещё и эта новость — отлично, просто отлично! — иксы планомерно, а самое главное неотвратимо, закапываются туда, где им и следовало быть, по меньшей мере, последние 10 лет.

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

Сравнивать вообще то начал не я.

Может!

Мне не верится, но это мое мнение, вполне возможно что там все лучше в этом плане. Возможно юнити некст писали сразу с оглядкой на мир.

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

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

Сравнивать вообще то начал не я.

Да тут уже фиг разберешь кто начал первый)))

Мне не верится, но это мое мнение, вполне возможно что там все лучше в этом плане. Возможно юнити некст писали сразу с оглядкой на мир.

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

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

Ну это беда любого технаря))

ihappy ()

А если бы не Mir, этого пришлось бы ждать еще долго.

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

Куда они закапываются? К ним добавили _ещё_ один костыль, чтобы заработало очередное ненужно. Нормальные такие инновации.

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

поэтому разработчики тестируют свою работу с помощью костылей.

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

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

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

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

> А если бы не Mir, этого пришлось бы ждать еще долго.

Шевелиться всё началось с выходом Wayland 1.0, но всем то пофиг, не видно же, где что там внутри, а громкие заголовки это еда.

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

Это они после демонстрации Unity на Mir зашевелились?

Я что-то пропустил? Когда это Unity на Mir демонстрировали? Я слышал только слухи о том, что они что-то пилят.

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

На самом деле это беда белок-истеричек :}

Deleted ()

Чтобы кто-то стал активно тестировать замену такому критичному компоненту как графическая подсистема нужно агрессивное проталкивание оного компонента. Например как в Ubuntu, там вообще ВСЕ проталкивается по команде космонавта (и я не говорю, что это всегда плохо) или если Red Hat вдруг резко понадобится, Fedora на него перейдет. Wayland должен быть в разы круче и вылизанней, нежели иксы, чтобы на него стали повсеместно переходить... А этого не наблюдается, пока она для меня, как стороннего наблюдателя выглядит, как неведомая хрень, которая без кусков иксов не запускается впринципе. Кстати Mir пока выглядит тоже ооочень сомнительно, а со стороны Valve так это вообще выглядит глобальным кидаловом. Сколько сил было потрачено на шлифовку существующих драйверов? Вот именно, а раскачать производителей на переписывание оных под Mir будет еще сложнее (особенно если учитывать, что совершенно не ясно какая моча может ударить комонавту через полгода.)

t500s ★★ ()

Велосипедостроение растет новыми темпами

koshmar ★★★ ()

Сколько можно заставлять wl-хейтеров посасывать, они же лопнут.

anonymous ()

Ох как я не доверяю вайланду, его ажно с самого 2008 пилят и все не допилят.
А мир, по видимому пилят уже с оглядкой на баги и предыдушие проблемы, так что он должен получится отличным.
В любом случае останусь на deb основанных дистрибутивах, привык я к apt,у

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

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

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

Кстати Mir пока выглядит тоже ооочень сомнительно, а со стороны Valve так это вообще выглядит глобальным кидаловом. Сколько сил было потрачено на шлифовку существующих драйверов?

Вообще-то, зная как связана 3D-графика и вещи типа X11/Wayland/Mir, я бы не стал так уверенно утверждать что усилия Valve были потрачены впустую.

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

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

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