ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] DM Policy 2.1 Обсуждение: сессии wayland и обвязка к ним
@ 2021-11-26 22:31 Igor Vlasenko
  0 siblings, 0 replies; only message in thread
From: Igor Vlasenko @ 2021-11-26 22:31 UTC (permalink / raw)
  To: devel

Уважаемые коллеги!

Хочу форкнуть из обсуждения Display_Manager_Policy 2.0
[
https://www.altlinux.org/Display_Manager_Policy
]
обсуждение темы "поддержка Wayland в Display_Manager"
по итогам которой, возможно, будет сформулировано
Display_Manager_Policy 2.1.

Затравку для обсуждения этой темы я выложил здесь.

https://www.altlinux.org/Display_Manager_Policy#Wayland


Проблема.
Не наработана системная обвязка для сессий Wayland.

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

Отличия классической сессии X от сессии Wayland.

Сводная таблица отличий.
{| class="standard"
! 
! сессия X
! сессия Wayland
|-
| сервер
| требуется уже запущенный X сервер.
| не требуется. Приложение запускает его самостоятельно
|-
| ограничения
| X приложение.
| нет. Что угодно. wayland compositor, fb app, console app,<br>X app (должна сама запускать себе X)
|-
| запуск
| нет требований. Сойдет fork+exec в текущем VT
| аналог openvt -s -- <wsession script>
|-
| обертка D-BUS
| dbus-launch --exit-with-x11 <xsession-script>
| dbus-run-session <wsession script>
|}

Следствие.
сессии Wayland в принципе не могут использовать старую схему
с запуском /etc/X11/Xsession как посредника.
Хотя бы потому, что /etc/X11/Xsession должен быть запущен
в сеансе X-cервера, вызывает утилиты X и без X-cервера
вылетит с ошибкой. 

Также почти все, что делает /etc/X11/Xsession, бессмысленно вне X.
Исключение - 
 /etc/X11/profile.d
но там у нас по сути нет ничего конкретно для X. Можно ввести какой-нибудь
 /etc/user-session/profile.d
и перенести бывшее в /etc/X11/profile.d туда (ssh-agent.sh xdg-user-dirs.sh ...)


В итоге гипотетический помощник ALT для сессии Wayland должен вызвать
 условный /etc/user-session/profile.d
и проконтролировать наличие пользовательской сессии D-BUS,
обернув при необходимости вызов сессии Wayland в dbus-run-session.
Это может быть не только скрипт, но и, 
к примеру, специально написанный для ALT pam модуль.

Также добавил по заказу Сергея Турчина (zerg@) в wm-select (dev version)
поддержку отображения wayland-sessions (но пока без полноценного запуска). 

./wm-select --no-x --wayland --xdg --print


============================================================

Выношу в отдельную поддискуссию в связи с важностью wayland 
и чтобы не смешивать с обсуждением проекта политики 2.0
(отказ от wmsession.d через миграцию xinitrc на новый runwm
(пока упакован в wm-select, как runwm.test.)

Cм. 

https://bugzilla.altlinux.org/show_bug.cgi?id=41367

#289869 TESTED #1 [test-only] sisyphus wm-select.git=0.9.8-alt2 xinitrc.git=2.4.47-alt3

$ runwm.test --help
runwm is compiled to use /etc/X11/wmsession.d by default.
Usage: runwm <window manager> [args(ignored)]
       runwm --print <window manager> [args(ignored)]
       runwm --list
       runwm --help

Extra options:
 --help this help
 -v,--verbose   verbose
 -q,--quiet     quiet
 --print        do nothing; just print command to execute
 --alt,--altlinux | --deb,--debian      use /etc/X11/wmsession.d
 --xdg,--freedesktop    use /usr/share/xsessions

-- 

I V


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-11-26 22:31 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-26 22:31 [devel] DM Policy 2.1 Обсуждение: сессии wayland и обвязка к ним Igor Vlasenko

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git