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 ()
Последнее исправление: Shaman007 (всего исправлений: 2)
Ответ на: комментарий от ihappy

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

Я что-то пропустил? Т.е. маленькие и незаметные конторы вроде Red Hat или Debian (на минутку вспомним что не мало пакетов для Ubuntu берется из репов Debian как есть...)

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

Во времена X11 не было серьезных альтернатив. Все ждали результата. А сейчас нужна очень весомая причина, чтобы использовать что-то новое.

Вот он, вменяемый человек...

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

Я что-то пропустил?

Видимо да.

(на минутку вспомним что не мало пакетов для Ubuntu берется из репов Debian как есть...)

И что?

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

Во времена X11 не было серьезных альтернатив. Все ждали результата. А сейчас нужна очень весомая причина, чтобы использовать что-то новое.

Да были альтернативы, были. Часть, например граф. система MacOSX, до сих пор жива. Просто X11 в добавок к тому, что позволяли конкуренты, имели хорошую архитектуру, поддерживающую до сих пор разные WM, пресловутую сетевую прозрачность.

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

Так это - минус. Как известно «идеальная система - так, которой нет, но функция выполняется». А у Wayland получается наоборот - функция не выполняется, а код уже везде лежит мертвым хламом.

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

Вот он, вменяемый человек...

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

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

Wayland имеет принципиальное отличие от того же directfb

Это несущественное отличие. На десктопе и тот, и другой сильно уступают Хам по фичам.

Да и дело не в самоm вяленом а в том что wayland сейчас поддерживают все тулкиты!!!

Перечислены далеко не все тулкиты.

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

То что Ubuntu взял Дебиан за основу, говорит только о том, что Каноникал не захотели делать велосипед. Плюс, если бы не каноникал, многое чего не было бы сделано в линуксе, к примеру нормальные дрова на видухи и тотже стим(который конечно не нужен, да да можешь не начинать)+ОС для новичков и выше.

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

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

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

Перечислены далеко не все тулкиты.

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

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

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

Почему-же не нужен, а как-же Team Fortress? Уже один он все окупает, и дрова-да это круто, только Вы по-моему только что перечислили заслуги Valve, а где тут Canonical?

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

Не, попасть-то попадет и довольно быстро (experimental, sid), но вот когда это станет по умолчанию вопрос действительно хороший... Да и чего-то сомневаюсь я, что сама Ubuntu перейдет на Mir в ближайшие год-два. Чай не Fedora-же...

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

только Вы по-моему только что перечислили заслуги Valve, а где тут Canonical

Если бы не каноникал, хер бы валве захотела делать бы. Так как реально десктопных решений в мире линукс, ровно одно! Это убунту. Все остальные для людей выше среднего уровня познания компов.

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

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

Господа, не уходите от темы. ;)

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

Да были альтернативы, были. Часть, например граф. система MacOSX, до сих пор жива.

Вот это ты курнул. В 83 году?

Так это - минус. Как известно «идеальная система - так, которой нет, но функция выполняется». А у Wayland получается наоборот - функция не выполняется, а код уже везде лежит мертвым хламом.

Потому что в иксах худо-бедно решены все проблемы. А тут целую экосистему городить и городить. Проблема-то не техническая, а политическая.

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

Вот это ты курнул. В 83 году?

Это ты курнул. Естественно, в 86-м, когда Хы еще недоделаны.

Потому что в иксах худо-бедно решены все проблемы. А тут целую экосистему городить и городить. Проблема-то не техническая, а политическая.

Проблема в том, что «чукча не читатель» - разработчикам на десктопе тяжело прочитать документацию по Хам. А написать свой велосипед значительно проще. Вот и торчит у нас полный гараж велосипедов с квадратными колесами - см. список о 9-ти позициях (без Wayland'а и Mir'а).

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

Это ты курнул. Естественно, в 86-м, когда Хы еще недоделаны.

Тогда это был один из немногих проектов на этапе выхода. Примерно как первый айфон. Все радовались и жали друг другу лапки от одной только мысли о графическом интерфейсе.

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

разработчикам на десктопе тяжело прочитать документацию по Хам. А написать свой велосипед значительно проще. Вот и торчит у нас полный гараж велосипедов с квадратными колесами - см. список о 9-ти позициях (без Wayland'а и Mir'а).

Да уж, а переписать иксы не получается. Можно для примера посмотреть microxwindows. Уже лет 7 они развиваются, до сих пор даже xkb нет...

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

Да уж, а переписать иксы не получается. Можно для примера посмотреть microxwindows. Уже лет 7 они развиваются, до сих пор даже xkb нет...

Это http://www.microwindows.org/ что ли?

На мой взгляд, нет смысла ПЕРЕПИСЫВАТЬ иксы за раз. Это слишком большая работа, да ещё и грозящая потерей совместимости. Скорее нужна эволюция от текущего состояния к лучшему с чёткими целями и планированием.

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

1. В отличие от других систем, в Х можно НОРМАЛЬНО (не как в Wayland'е) поменять оконный менеджер.

2. Можно включить сетевую прозрачность из коробки.

3. Кроссплатформенность сервера и клиента, начиная от OpenVMS и заканчивая MacOSX.

4. Хы не прибиты в системе - их всегда можно удалить, чтобы не маячили. Попробуйте сделать то же самое в MacOSX/Windows.

5. Груда backend'ов.

6. Открытые исходники.

----------------------------------------------------------- Однако, если тупо орать «Хы устарели», ничего хорошего не выйдет. Ведь такие вопли полностью отрицают всё хорошее, что есть в Х.

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

http://www.microxwin.com

Мёртворожденное. Я же говорю, никому не нужно менять Хы на поделие, которое позволяет меньше. Никто в здравом уме и трезвой памяти с легковушки на инвалидку не пересаживается.

Все эти плюсы только для тех, кому иксы не нужны. Можно удалить, можно заменить и т.д.

;-) Это плюсы для тех, кому захотелось KDE, а не GNOME. Или xmonad, а не эти монстры. Это - свобода выбора. А отсюда - развитие.

Да и сетевая прозрачность давно уже миф.

Звиздеть не надо - я же ей пользуюсь.

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

Мёртворожденное. Я же говорю, никому не нужно менять Хы на поделие, которое позволяет меньше. Никто в здравом уме и трезвой памяти с легковушки на инвалидку не пересаживается.

Ну как сказать. Планшеты же покупают...

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

Это плюсы для тех, кому захотелось KDE, а не GNOME. Или xmonad, а не эти монстры. Это - свобода выбора. А отсюда - развитие.

Я даже не говорю, что разница между этими ДЕ умозрительна. Два монстра, два комбайна, которые не дают реальной альтернативы, а только разделяют и без того жидкое комьюнити.

Но в любом случае оба этих комбайна или уже работают на вяленде или будут работать. Так же как и на этом новом мире. В чем разница с иксами?

Или xmonad, а не эти монстры.

тем более. бекенд допилил и запускай.

Звиздеть не надо - я же ей пользуюсь.

я тоже иногда. Но freenx, vnc или spice проще и лучше.

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

Ну как сказать. Планшеты же покупают...

И что с того? Что - на планшетах не могут идти Хы? Я, кстати, не очень понимаю, почему никто туда их не встроил. :-) Кстати, я не очень удивлюсь, если все линуксовые граф. системы на планшетах пожрут Хы.

Я даже не говорю, что разница между этими ДЕ умозрительна.

А жопа с пальцем у тебя тоже одинаковы, да?

тем более. бекенд допилил и запускай.

Ты на спецификации Wayland'а смотрел? Каким backend'ом ты исправишь декорации, нарисованные самим окном? А зачем тебе на xmonad эти KDEшные заголовки?

Ну и сама постановка вопроса тоже смешная. Тебе не нравятся Хы - запили альтернативу и запускай. Тебе не нравится Windows - запили альтернативу и запускай. Детство, блин.

я тоже иногда. Но freenx, vnc или spice проще и лучше.

Ну уж это - наглое враньё. VNC, к примеру, передаёт весь экран, а не отдельное окно. Т.о. удалённые программы выглядят совершенно не так, как родные.

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

И что с того? Что - на планшетах не могут идти Хы?

Могут и идут. Но если тебе достаточно, например, возможностей directfb, то зачем жирные иксы?

Сразу говорю, мне совершенно недостаточно текущих альтернатив иксов, поэтому я везде, в том числе и на планшеты ставлю как раз xorg, но если появится стабильный усеченый вариант на EGL, с нормальной отрисовкой, поддержкой клавиатуры, мыши, тачпада, аналогами xrandr, glx, xv и нормальным количеством работоспособного софта, то будет круто. А сетевую прозрачность можете оставть себе, выбор композера и DE тоже.

Ну уж это - наглое враньё. VNC, к примеру, передаёт весь экран, а не отдельное окно. Т.о. удалённые программы выглядят совершенно не так, как родные.

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

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