Опубликован выпуск пакета wayland-protocols 1.42, содержащего набор протоколов и расширений, дополняющих базовый протокол Wayland и предоставляющих возможности, необходимые для построения композитных серверов и пользовательских окружений...Подробнее: https://www.opennet.me/opennews/art.shtml?num=62940
xdg-decoration, ну, вот, а сколько разговоров было. С этого и начинать надо было.
Наконец-то X12! Осталось только протокол для принтеров добавить!
Что за бред. Для настройки и работы принтера Wayland не нужен.
Это шутка о том, что когда-то иксы управляли принтерами.
Раньше считалось, что работа с принтером не должна сильно отличаться от работы с окном. Видимо отсюда и желание встроить в X11 поддержку печати. Да и в ранних OpenGL были намёки, что контекст 3D для принтера может быть штукой полезной - на принтере тоже можно вывести 3D-картинку.Со временем это сделали уже на уровне тулкитов (типа QPainter в Qt) вместо встраивания в графическую систему.
Для X12 нужно всё в AF_INET (AF_INET6) завернуть.
И звуком! А то как то какой то не юниксвейный этот ваш вайланд!
вы еще пропустили момент когда верт синхронизацию разрешили ОТКЛЮЧАТЬ) (разговоры о тиринге)
> вы еще пропустили момент когда верт синхронизацию разрешили ОТКЛЮЧАТЬ) (разговоры о тиринге)Лол =)
Ну что ж, тогда, перефразируя Леннарта: "то, что мы избавились от тиринга -- не было нашей целью, это просто побочный результат того, что мы делали вещи правильно".
upd: проверил инфу, и таки да, и таки давно
https://www.opennet.me/opennews/art.shtml?num=58160
для кого-то это как вчера
> xdg-decoration, ну, вот, а сколько разговоров было. С этого и начинать надо было.ВНЕЗАПНО там не написано что SSD должны поддерживаться. Посмотрите https://gitlab.gnome.org/GNOME/mutter/-/issues/2342
Картинка-в-картинке уже наконец сделают?
Так давно уже
И даже поверх всех окон теперь висит?
В GNOME Wayland это работает если это расширение установить:
https://extensions.gnome.org/extension/4691/pip-on-top
В КДЕ хоть поверх всех окон, хоть даже поверх полноэкранных приложений, как душе угодно
Да? И как? Создание правил для окон не предлагать.
Как теперь различать, программа через xwayland запущена, или напрямую? Вот у xwayland нормальная иконка на панели была, а у вейланда всегда дефолтная.
Классический способ - открыть XEyes и навестись курсором мыши на окно, которое подозревается, что открыто в XWayland. Если в этом подозреваемом окне (НЕ XEyes) глаза из XEyes следуют за курсором мыши, то оно открыто в XWayland, иначе Wayland native.
Ещё вариант - запустить в терминале xlsclients. Покажет список того, что запущено под иксами.
Не, это совсем не работает. Я таким образом подумал, что вайн у меня успешно без xwayland заработал. Но нет, не во всех случаях и в основном без dxvk.
Wine до сих пор использует X11 драйвер как основной. Он не будет запущен только в том случае, если XWayland нет в системе, или если был запущен без переменной DISPLAY.На что в принципе все равно: если приложение настаивает, что лучше использовать XWayland, то лучше используйте его. В играх от него практически нет оверхеда или инпут лагов.
Если нормально запускается на Wayland из коробки, то используйте Wayland версию.
В разделе HKEY_CURRENT_USER\Software\Wine\Drivers в ключе Graphics меняем значение, переставляем x11,wayland местами -- будет стартовать на wayland по умолчанию.
Это устаревшая информация, если не ошибаюсь. Так работало в Wine <= 9.22.От 9.23 и выше оно определяется именно по DISPLAY переменной.
Оно и работает по DISPLAY переменной.Берёт первый из списка, а это x11.
Берёт переменную DISPLAY, а там пусто - инициализация не проходит.
Берёт следующий, а это wayland.Если поменять местами значения в ключе, тогда сразу будет пробовать wayland, до DISPLAY дело не дойдёт.
Буквально вчера на 10.3 менял "wayland,x11" обратно на "x11,wayland", поскольку
wine reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v LogPixels /t REG_DWORD /d 0x90 /f
под wayland не увеличивало размер шрифта.
xlsclients
> xlsclientsЕсть что-нибудь более надёжное? Может, грепнуть открытые файлы, или прилинкованные библиотеки там.
> Есть что-нибудь более надёжное?А что там ненадёжного? Это официальная утилита проекта https://gitlab.freedesktop.org/xorg/app/xlsclients . Она просто и без затей обходит дерево окон XOrg.
Показывает в среднем 1 программу из 1000 запущенных даже на иксовой сессии, часто без какой бы то ни было идентификации (просто строчка с именем хоста и пойди угадай что
это такое вообще). Так себе надёжность. Зачем вообще существует непонятно.
> Показывает в среднем 1 программу из 1000 запущенныхПотому что уже давно многие не устанавливают все свойства окна. Можно и так
```xwininfo -root -children -tree```
Но определить, кто это, порой довольно трудно. Т.к. вот у меня, например, вывод (GNOME47 Wayland, ради эксперимента запущен 7Zip в Wine)
```
0xa019ad "Z:\home\": ("mutter-x11-frames" "mutter-x11-frames") 1366x746+0+0 +0+0
2 children:
0x1e00003 "Z:\home\": ("7zfm.exe" "7zfm.exe") 1366x709+0+37 +0+37
0xa019ae (has no name): () 1x1+-1+-1 +-1+-1
0x1e00007 (has no name): ("7zfm.exe" "7zfm.exe") 1x1+0+0 +0+0
0x160000a (has no name): ("explorer.exe" "explorer.exe") 1x1+0+0 +0+0
0x1e00006 (has no name): ("7zfm.exe" "7zfm.exe") 1x1+0+0 +0+0
0x1e00005 (has no name): ("7zfm.exe" "7zfm.exe") 1333x491+4+71 +4+71
0x1e00004 "Default IME": ("7zfm.exe" "7zfm.exe") 1x1+0+0 +0+0
0x1a00022 (has no name): () 1x1+-1+-1 +-1+-1
0x400018 (has no name): () 1x1+0+0 +0+0
0x1e00002 (has no name): () 1x1+0+0 +0+0
0x1600009 (has no name): ("explorer.exe" "explorer.exe") 1x1+0+0 +0+0
0x1600008 (has no name): ("explorer.exe" "explorer.exe") 1x1+0+0 +0+0
0x1600007 (has no name): ("explorer.exe" "explorer.exe") 1x1+0+0 +0+0
0x1600006 (has no name): ("explorer.exe" "explorer.exe") 1x1+0+0 +0+0
0x1600005 "Default IME": ("explorer.exe" "explorer.exe") 1x1+0+0 +0+0
0x1400035 (has no name): () 1x1+-1+-1 +-1+-1
0x1600004 (has no name): ("explorer.exe" "explorer.exe") 160x20+3+22 +3+22
0x1800003 (has no name): () 1x1+0+0 +0+0
0x400017 (has no name): () 1x1+0+0 +0+0
0x1800002 (has no name): () 1x1+0+0 +0+0
0x1600003 (has no name): () 1x1+0+0 +0+0
0x400016 (has no name): () 1x1+0+0 +0+0
0x1600002 (has no name): () 1x1+0+0 +0+0
0x400015 (has no name): () 1x1+0+0 +0+0
0x400014 (has no name): () 1x1+0+0 +0+0
0x400013 (has no name): () 1x1+0+0 +0+0
0x609b8d (has no name): () 1x1+0+0 +0+0
0x6063e6 (has no name): () 1x1+-1+-1 +-1+-1
0x6063e5 (has no name): () 1x1+-1+-1 +-1+-1
0x6063e4 (has no name): () 1x1+-1+-1 +-1+-1
0x6063e3 (has no name): () 1x1+-1+-1 +-1+-1
0x400012 (has no name): () 1x1+0+0 +0+0
0x400010 (has no name): () 1x1+0+0 +0+0
0x40000a (has no name): () 1x1+0+0 +0+0
0xa00009 (has no name): () 1x1+-1+-1 +-1+-1
0x1000001 (has no name): () 10x10+-20+-20 +-20+-20
0xa00002 "mutter-x11-frames": ("mutter-x11-frames" "mutter-x11-frames") 1x1+0+0 +0+0
1 child:
0xa00003 (has no name): () 1x1+-1+-1 +-1+-1
0x600008 (has no name): () 1x1+-1+-1 +-1+-1
0x600007 (has no name): () 1x1+-1+-1 +-1+-1
0x600006 (has no name): () 1x1+-100+-100 +-100+-100
0x600005 (has no name): () 1x1+-100+-100 +-100+-100
0x600004 (has no name): () 1x1+-1+-1 +-1+-1
0x600003 (has no name): () 1x1+-100+-100 +-100+-100
0x600002 (has no name): () 1x1+-100+-100 +-100+-100
0x600001 "GNOME Shell": () 1x1+-100+-100 +-100+-100
0x400003 "ibus-xim": () 1x1+0+0 +0+0
1 child:
0x400004 (has no name): () 1x1+-1+-1 +-1+-1
0x400001 "ibus-x11": ("ibus-x11" "Ibus-x11") 10x10+10+10 +10+10
0x200002 (has no name): () 10x10+0+0 +0+0
0x200001 "gsd-xsettings": ("gsd-xsettings" "Gsd-xsettings") 10x10+10+10 +10+10
0x60000a "mutter guard window": () 1366x768+0+0 +0+0```
Если у вас GNOME, для этого установите это расширение:
https://extensions.gnome.org/extension/6676/xwayland-indicator
#!/bin/bashif pgrep -x Xwayland > /dev/null
then notify-send 'Xwayland'
fi
через глаза иксовые, наведением курсора
Мне кажется уже надо тормозить. Лишние расширения не нужно добавлять, а то через несколько лет получим монстра как X.org.Остальной функционал пусть (на своё усмотрение) внедряют разработчики WM и DE.
Wayland Protocols нужны для стандартизации. Без этого разработчикам каждого Wayland-композитора придётся самостоятельно изобретать отдельно от других свои "велосипедные" Wayland-протоколы. А это приведёт к тому, что придётся создавать отдельные версии приложения для каждого отдельного композитора.
Справедливости ради протоколы - это самая ущербная идея, которая может быть. Что будет, если муттер реализует протокол, а квин - нет? А если программа будет полагаться на наличие протокола? Верно, под квином программа будет работать не так. Ну проходили уже во времена жаббера, ну нерабочая это история.
Это как понять силу ноля и наконец ждать когда что нибудь появиться ставя на это самую маленькую надежду когда вокруг не известно что делает пытаясь в эпитеч
> Что будет, если муттер реализует протокол, а квин - нет?То должен быть механизм проверки что поддерживается.
> А если программа будет полагаться на наличие протокола?
Элементарно же! Нужно вывести юзеру осмысленное сообщение "что ожидается и что не поддерживается".
ЗЫ: а у вас был опыт проф. разработки?
Представьте себе, когда вы поддерживаете несколько версий ОС, то там некоторые вещи есть только в более новых, или наоборот что-то задепрекейчено и есть только в старых. А если это кроссплатформа - то там что-то вообще иначе делается. И как-то это все хендлится.Хотя это вряд ли применимо для свободного софта, пишущегося по вечерам на выходных в контексте маргинальных васяно-DE.
> А если программа будет полагаться на наличие протокола?Протокол в основе своей предполагает, что всегда можно получить список всех реализуемых композитором расширений и их версий (как и версию протокола). Поэтому, ситуацию отсутствия нужного протокола всегда можно выявить и обработать.
Вообще, если посмотреть на логи програм, то они определяют, какой протокол поддерживается, а какой нет.Соответственно, если какой-то из протокол не поддерживается, то просто отключается соответствующая функциональность (если она для приложения критическая - то оно, скорее всего, просто закроется).
> А если программа будет полагаться на наличие протокола?
Ну тогда надо написать bug report с лэйблом feature request. Вам либо скажут, что когда-нибудь сделают, либо просто развернут. Во втором случае, это будет не их проблема.
> Wayland Protocols нужны для стандартизации. Без этого разработчикам каждого Wayland-композитора
> придётся самостоятельно изобретать отдельно от других свои "велосипедные" Wayland-протоколы.
> А это приведёт к тому, что придётся создавать отдельные версии приложения
> для каждого отдельного композитора.И Kerr чертовски прав. Подписываюсь под каждым словом.
> Мне кажется уже надо тормозить. Лишние расширения не нужно добавлять, а то
> через несколько лет получим монстра как X.org.Да что вы говорите. Вот же неожиданность. =)
> Остальной функционал пусть (на своё усмотрение) внедряют разработчики WM и DE.
Ну тогда вы либо никогда своё детище не допилите, либо вас ждёт вечный вендор-лок от IBM. В общем, есть два стула.
> уже надо тормозитьТогда не надо было и начинать...
> через несколько лет получим монстраНа четвертый день Острый Глаз ...
> через несколько лет получим монстра как X.orgЧерез десятки лет. Начало разработки вейленда - 2008 год. Прошло 17 лет, а у них базовые фичи до сих пор "unstable", и это всего лишь протоколы.
Почему нельзя сразу спроектировать и выпустить готовый продукт, который стал бы стандартом с гарантированной совместимостью на много лет вперёд? Зачем постоянно релизить неработающие альфа версии, которые мутируют от выпуска к выпуску? Такое ощущение, что этим занимаются студенты в рамках курсовых работ.
Я вот тоже не понимаю почему ты дурью маешься а не реализовал такой проект?
Потому что, даже если кто-то со стороны, например я, реализует такой протокол, то ни один тулкит на него не перейдёт. Все тулкиты под корпорациями, гном под корпорацией, кде под корпорацией, весь софт более-менее крупный на линуксе под корпорациями, и они ни за что, ни при каких обстоятельствах не поддержат независимый продукт. Они скорее угробят всю экосистему, чем поддержат кого-то независимого. Создай кто-нибудь сегодня жизнеспособный форк Иксорга, они скорее удавятся, чем отдадут трэйдмарк, скорее удалят все архивы и документацию, чем дадут развиваться.
> они ни за что, ни при каких обстоятельствах не поддержат независимый продуктИ что это? продукт теоретически создаваемый экспертами в коментариях?
Так это фантазии очень далёкие от реальности.
Для примера из практики далеко ходить не надо, достаточно заглянуть в багтрекер вэйланда и посмотреть сколько занимало утверждение новых протоколов, пока не пришли валв и не сказали: "вот протоколы, которые мы внедряем, стандартизируйте или прочь с дороги". После этого тут же появилить категории для нестабильных и экспериментальных протоколов. А без этого "сообщество" так бы и продолжало развлекать "демократическим" бюрократическим процессом ещё очень долгое время.
> А без этого "сообщество" так бы и продолжалоТак "сообщество" из тех же корпораций.
У того же вон RedHat рабочая станция работает в Wayland и нормально.
С чего они должны подрываться и делать всякое на тему игрулек? Это не их ЦА.Просто причина со следствием пеерпутана.
Если бы был какой независимый пионер, который всё это бесплатно реализовал - так все были бы рады. Но это нереально.
Хорошо, перестанем делать плохо, станем делать хорошо.
> Такое ощущение, что этим занимаются студенты в рамках курсовых работ.Что поделать, все профи пишут комменты на опеннете.
Приходится студня за них отдуваться))
>Нет... Такими темпами разработки им никогда не догнать Иксы.Wayland начали разрабатывать для того чтобы уйти от самого подобия Иксов. Смекаешь?
> Почему нельзя сразу спроектировать и выпустить готовый продукт, который стал бы стандартом
> с гарантированной совместимостью на много лет вперёд?Ну блин, вопросы у тебя. Потому что даже небольшой продукт нельзя сразу сделать идеальным. А тут -- целая графическая подсистема. Это нужна команда людей с IQ 130+, которые во-первых полностью все возможные случаи в голову смогут себе засунуть, а во-вторых согласятся делать это на протяжении хотя бы пары лет. И всё равно скорее всего найдутся вещи, которые они НЕ продумают заранее.
Если помните, X-протоколы изначально разрабатывались на базе университетов: им просто американская оборонка бабахала деньги, а они сидели и думали над задачей. А сейчас ситуация сильно иная.
> Такое ощущение, что этим занимаются студенты в рамках курсовых работ.
Сейчас развитием занимаются инженеры, которым платят за время. Отсюда и текущее положение вещей.
> Протоколы "unstable":
> - fullscreen-shell
> - input-method
> - idle-inhibit
> - input-timestamps
> ...Нет... Такими темпами разработки им никогда не догнать Иксы.
Адепты вайланда хают иксы за то что они обвешаны костылями. Интересно, а разве в новорожденном вайланде не так? Почему не слепить его одним универсальным блоком? А то я только в этой статье заколебался считать отдельно слепленные протоколы.
Прям какой-то waylanD, получается.
Wayland (Протокол) - один, релизится редко, давно стабилизирован. wayland-protocols - это дополнения расширяющие функционал основного протокола который, как уже выше было отмечено стабилен. Сейчас главное чтобы разработчики программ, библиотек, тулкитов, WM и DE начали реализовывать поддержку Протокола в своих продуктах.
Только без протоколов он неюзабелен.
Интересно, чисто вейланд без чего-то из иксов сможет функционировать? А то костыликов начинающихся с буквы "х" размножается всё больше и больше. И за ними самого вейланда не видно.
Чтобы использовать вайланд обязательна установка иксов?
> Чтобы использовать вайланд обязательна установка иксов?Нет.