LINUX.ORG.RU
ФорумTalks

[wayland][X]Продолжаем разговор...

 ,


0

1

Planning the X/Wayland Marriage, X Server 1.13

Keith then took off his release management hat and began talking about X.Org and Wayland integration. The plans, which aren't new, is to allow for full integration between X and Wayland applications. There will be support for seamless multi-window mode, and full performance of X exposed through Wayland. X.Org-dependent applications will be able to run within a Wayland Display Server just as XQuartz does similarly for X applications on Mac OS X.

Keith expects that there will be no performance penalty of running X applications on Wayland versus running them as you have already for decades on bare metal. In fact, he says it's one of his goals to see there aren't any performance drops, but the performance of X applications on Wayland may actually yield a performance boost. The performance boost would come as a result of handling swap requests with Wayland being much simpler.

Among the X/Wayland items still to be solved is how to synchronize keyboard mapping changes, the acceleration architecture for X on Wayland, and how to handle RandR-like display configuration changes. In terms of the acceleration architecture discussion it came down to how to best accelerate X apps on Wayland and whether some DDX driver code from the various hardware drivers should be pulled out or what would be the best approach.

As far as what works now for X on Wayland is that basic X apps should be working, a primitive window manager, cut/paste, and drag-and-drop works. Keith acknowledges lots of people are excited about switching to Wayland.

Источник
First Wayland Release: Wayland 0.85 With Weston

Kristian Høgsberg has just announced Wayland 0.85 and Weston 0.85, which mark the first official releases of Wayland and its reference compositor, respectively.

While Wayland/Weston 0.85 is now out there, this is just one of their pre-1.0 snapshots. This is just a first-shot for those that have been waiting for Wayland to appear in some released form before either packaging it up and/or beginning work on porting their application/desktop to the eventual X.Org-replacement.

From Kristian's announcement:

This is the first real release of Wayland and Weston. Wayland is the protocol and IPC mechanism while Weston is the reference compositor implementation. The 0.85 branch in both repositories is going to be protocol and interface stable. We have a series of protocol changes on the table before 1.0 but this branch marks a stable point before we jump into that.

We may do more 0.85 releases down the road if there's interest and something sufficiently embarrassing shows up.

Источник

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

А кто их знает, может хомячкам показалось недостаточно красиво? :)

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

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

Это как раз очень даже не лишняя сущность для телефона. А как раз наоборот - когда производители мобил осилят Х - это будет прорыв :D

Более того до выхода андроида пробегала серия проектов из лаболаторий гугла на тему X+мобилы. Очень прогрессивно - они сделали экспериментальные Х где наконецто поддерживается функционал Хсов 30 летней давности :D

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

Например представь что поднес ты мобилу в пределы досягаемости домашнего компа - на компе появляются окна приложений с мобилы. И это не какие то там «управлялки мобилой» как сейчас - а просто те же программы что ты видел до этого на маленьком мобильном экране.

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

То же самое наоборот - принес мобилу (планшет), к например, какому нибудь девайсу типа сервера, оборудования и тп, без дисплея, у тебя на экране окна приложений с этого девайса. Потыкал, на них, все настроил - все. Даже делать ничего не надо, как отойдешь из с\зоны коннекта с сервером - окна исчезнут.

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

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

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

Разве на n900 не иксы?

Думаешь почему я сказал «почти»? n900 и вся эта линейка - исключение. Есть еще по моему, какие то исключения. Но в 99% мобильных девайсов стоит чего нибудь вроде QT для мобил / directfb и прочее такое же.

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

/sbin/init (аналогом которого является systemd) тоже бинарь, как ты его vi патчить-то собрался?

как рах systemd является аналогом init + все_скрипты . Править init не нужно потому что его функционал очень маленький и не менялся уже десяток лет.

А аналогом классических инитскриптов там являются *.service файлы,
которые тоже текстовые и их, соответственно, вполне себе можно vi
обрабатывать.

Нет. Сервис файлы это аналог /etc/sysconfig - то есть файлов настроек для init cкриптов.

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

Повторю:

А предоставил некий интерфейс, Б доработан под этот интерфейс. Т.е. А потребовал доработки Б.

Прошу ответить, почему я не могу употребить глагол «требовать» в данном контексте.

Русский язык слишком сложен, да?

Сложнее, чем думают некоторые ;)

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

Meego - это и есть N9. Tizen и Bada уже совсем другая песня, там в основе EFL, работающий без иксов.

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

Киллерфичи. Хотеть.

Сначала надо как минимум запилить динамическое переподключение клиентов к X-серверам

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

Потому что требования нет. Б будет прекрасно работать с А безо всякой доработки. Требование должно выполняться _обязательно_, блин. Здесь никакой обязаловки нет -> это не требование, а возможность.

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

Но в 99% мобильных девайсов стоит чего нибудь вроде QT для мобил / directfb и прочее такое же.

Ты что-то путаешь, или это 99% нео фрираннеров :)

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

динамическое переподключение клиентов к X-серверам

man xpra

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

Потому что требования нет. Б будет прекрасно работать с А безо всякой доработки.

С чего бы это? Есть требование поддержки нового интерфейса. В случае пульса приложения, не поддерживающие интерфейс, «прекрасно работают» с доработанной алсой, а не с ним. Сами же пишете:

Вы же не жалуетесь, что для запила новых фич, нужно писать новый код, да?

Ну я и говорю: пульс потребовал доработки ПО для работы с ним ;) И доработки эти появились.

Требование должно выполняться _обязательно_, блин. Здесь никакой обязаловки нет -> это не требование, а возможность.

«Прокол требовал замены колеса, но останавливаться было нельзя» :D

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

Написали бред про «Б будет прекрасно работать с А безо всякой доработки», а я, оказывается не в адеквате :D

Не будет Б работать с А без доработки. Может работать через посредника В, который знает и старый интерфейс, который знает Б, и новый, который предоставляет А. Таким посредником, грубо говоря, является pulseaudio-alsa.

Очень сложная цепочка получилась, понимаю :)

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

Вполне обычный слой для обратной совместимости. Всё просто: люди могут долго материться, что пульсаудио глючит и выпилить его простым apt-get remove, с более другими изделиями Поттеринга так не выйдет. Разница чувствуется?

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

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

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

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

Мы возвращаемся к тому, что прямая поддержка пульса требует прямой поддержки пульса :D

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

Сначала надо как минимум запилить динамическое переподключение клиентов к X-серверам

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

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

Ты что-то путаешь, или это 99% нео фрираннеров :)

там стоит «прочее такоеже». Я про то что там стоит дисплей фремворк такого же типа, по сути.

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

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

Вы подменяете понятия. У вас «доработанная куча софта» в разных сообщениях значит абсолютно разное чем вы и пользуетесь для манипуляции. Это прием демагогии.

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

Можно примеры? Мне наоборот кажется, что демагогию развели некоторые товарищи на тему «рекомендует, но не требует»: раз есть слой совместимости, то пульс не потребовал, а порекомендовал :)

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

А предоставил некий интерфейс, Б доработан под этот интерфейс. Т.е. А потребовал доработки Б. Что в этой фразе не так?

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

Что в этой фразе не так?

Не так тут то что Б у вас то «прикладные программы юзающие алсу» то «внутренности алсы». И в этом суть передергивания.

PS
И что-то, опять же, не помню что именно потребовалось поменять именно в алсе не относящееся к исправлению багов и косяков с неопределенным поведением.

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

Примера передёргивания я так и не увидел.

«Не так тут то что Б у вас то „прикладные программы юзающие алсу“ то „внутренности алсы“.»(C)

Это был пример вашего передергивания.

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

Прошу ответить, почему я не могу употребить глагол «требовать» в данном контексте.

Потому что фраза «пулс потребовал изменений в прикладном ПО» означает что прикладное ПО не смогло бы работать через пулс без внесения этих изменений. Так как этого не произошло - софт мог работать с пулсом без внесения изменений - то употребление глагола «требовать» в данной ситуации неверно.

Корректной фразой отражающейс ситуацию была бы «Внедрение пулс в „линукс“ была одной из причин по которой произошла доработка софта для поддержки дополнительных возможностей предоставляемых пулсаудио»

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

Очень интересная дискуссия, я пока на стороне kernel.

Можно один вопрос к обоим? :) Под каждое приложение пришлось пилить свой слой совместимости или нет? Я не в курсе. Если нет, то тогда все понятно: сделали пульс, сделали слой совместимости, берем любое приложение, которое работало с альсой и оно работает с пульсом безо всяких переделок. А уж когда захочется и появится время, чтобы работали всякие фишки пульса в нативном режиме, тогда берем и переделываем приложение на поддержку пульса. Но сам пульс этого не _требует_: и без этих переделок приложение работает.

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

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

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

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

Всё верно.

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

Потому что фраза «пулс потребовал изменений в прикладном ПО» означает что прикладное ПО не смогло бы работать через пулс без внесения этих изменений.

Через пульс :) Смотрим на pulseaudio-alsa и на *-output-pulse, *-output-pulse и pulseaudio-alsa, думаем.

Корректной фразой отражающейс ситуацию была бы «Внедрение пулс в „линукс“ была одной из причин по которой произошла доработка софта для поддержки дополнительных возможностей предоставляемых пулсаудио»

Внедрение интерфейса А было одной из причин, по которой софт Б был доработан для поддержки интерфейса А. 

Перефразируем:

Софт Б был доработан для поддержки интерфейса А.
Называем вещи своими именами:
vlc был доработан для поддержки pulseaudio.
Задаём вопрос:
Почему был доработан vlc?
Отвечаем:
vlc был доработан для поддержки pulseaudio.
Странно? Ничего страного, вспоминаем слова Binary:

Вы же не жалуетесь, что для запила новых фич, нужно писать новый код, да?

Вспоминаем предмет дискуссии: требуется ли для прямой поддержки интефейса прямая поддержка интерфейса? :D

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

Очень интересная дискуссия

Не уверен :)

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

И вот когда мы их сделали, задаём себе вопрос: а почему мы их сделали? Уж не потому ли, что для прямой поддержки потребовалась прямая поддержка?

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

Всё просто: люди могут долго материться, что пульсаудио глючит и выпилить его простым apt-get remove, с более другими изделиями Поттеринга так не выйдет.

systemd тоже можно выкинуть, если у тебя все демоны запускаются инит-скриптами

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

сть еще по моему, какие то исключения.

Motorola EZX?

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

Судя по ответам на мой вопрос, вы неверно понимаете и употребляете слово «потребовалась». Изначально была фраза «пульсаудио потребовал доработки софта под него». Эта фраза означает, что если бы софт не был доработан, то при запуске с пульсом какая-то его функциональность (воспроизведение звука или что-то еще) была бы утеряна. Но это неверно (см. ответы на мой вопрос).

задаём себе вопрос: а почему мы их сделали?

потому что захотелось (внимание!) «чтобы работали всякие фишки пульса». Имеются в виду _новые_ возможности, которых не было без пульса. Старые должны работать (см. выше) и без переделок.

Еще раз: то, что кто-то запилил поддержку пульса, не следствие того, что приложение не могло бы работать с пульсом без этого. Это следствие того, что кому-то захотелось иметь _новые_ фичи в своем приложении. «После» != «из-за».

Просто если рассуждать по-другому, получается что угодно: например «X11 потребовал доработки vim» или «KDE потребовал доработки ВАЗ-2106».

P. S. и что за «прямая поддержка»? Это из фигурного катания что-то?

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

«пульсаудио потребовал доработки софта под него»

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

Еще раз: то, что кто-то запилил поддержку пульса, не следствие того, что приложение не могло бы работать с пульсом без этого. Это следствие того, что кому-то захотелось иметь _новые_ фичи в своем приложении. «После» != «из-за».

Не «работать с пульсом», а «выводить звук». Поддержка пульса - следствие желания работать с пульсом, а не со слоем совместимости. Причины такого желания могут быть разные, не обязательно связанные с фишками пульса. Вас больше не удивляет, что для работы с пульсом требуется доработка ПО? :)

Просто если рассуждать по-другому, получается что угодно: например «X11 потребовал доработки vim» или «KDE потребовал доработки ВАЗ-2106».

А это уже последствия когнитивного диссонанса :D

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

Вы не разделяете работу непосредственно с пульсом и через слой совместимости

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

Ваше же изначальное утверждение сводится к тому, что мое приложение с пульсаудио работать не будет (т. е. звука я не услышу). Это неправда.

Не «работать с пульсом», а «выводить звук». Поддержка пульса - следствие желания работать с пульсом

Взаимоисключающие параграфы же. И если подставить «выводить звук» на местро «работать с пульсом», то получим, что «Поддержка пульса - следствие желания выводить звук, а не работать со слоем совместимости.» Но это же очевидно не так: если я хочу выводить звук, я не обязательно выбираю пульс, я могу написать, как и раньше, под альсу.

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

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

Вы обосновываете ошибочность фразы «пульс потребовал доработок ПО под себя» тем, что есть слой совместимости и при работе через него доработки не требуются. Капитан Очевидность подсказывает, что слой совместимости не может требовать доработок ПО, потому что тогда это будет уже никакой не слой совместимости. Говорить о доработках ПО под новый интерфейс в контексте слоя совместимости вообще не имеет никакого смысла. Подумайте об этом, в этом нет смысла :)

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

Именно это и пытаются доказать тебе 4 разных человека на протяжении трех дней:

твоя исходная фраза не имеет смысла.

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

Перефразируем ...

Не перефразируем а передергиваем. Вы взяли «Внедрение пулс в „линукс“ была одной из причин по которой произошла доработка софта для поддержки дополнительных возможностей предоставляемых пулсаудио» и поменяли ее смысл на «Софт Б был доработан для поддержки интерфейса А.».

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

Под каждое приложение пришлось пилить свой слой совместимости или нет? Я не в курсе.

Я совсем подробно не копался, но там ответ на этот вопрос не просто «нет». Пулс использует стандартный интерфейс алсы для плагинов. То есть если бы алса была без багов она бы «гарантировала» отсутствие изменений в прикладном ПО.

И как правильно обратил внимание оппонент, фраза «приложение работающие с пулсом» по сути не верна. Приложение и в случае с пулсом и в случае с чистой алсой «работает с алсой». Пулса как бы в теории для приложения вообще нету, не потому что слой совместимости (его, внезапно, нету), а потому что так алса устроена.

IRL конечно получилось что алса ничего нам не гарантирует хоть и обещает. Откуда и срач, в том числе.

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

Ага, ну это уже более понятно. Т. е. пульс - это нечто вроде плагина?

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

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

Возвращаемся к логике

твоя исходная фраза не имеет смысла.

У нас есть новая сущность для работы со звуком, поддерживающая как собственный новый интерфейс, так и старый интерфейс для совместимости (пока не рассматриваем как).

Имеем 2 непротиворечащих друг другу утверждения:

  • Для работы приложений через старый интерфейс не требуется доработка приложений.
  • Для работы приложений через новый интерфейс требуется доработка приложений.

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

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