ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Igor Vlasenko <vlasenko@imath.kiev.ua>
To: devel@lists.altlinux.org
Subject: [devel] Пошаговый переход Display_Manager_Policy к стандартам freedesktop.
Date: Tue, 16 Nov 2021 17:59:15 +0200
Message-ID: <20211116155915.GA6869@dad.imath.kiev.ua> (raw)

Пошаговый переход Display_Manager_Policy к стандартам freedesktop.
Шаг 1.

Проблема: наша политика
https://www.altlinux.org/Display_Manager_Policy
устарела, не учитывает стандарты freedesktop
и новые freedesktop-совместимые DM,
не учитывает Wayland.

Как это работало раньше?

файлтриггер после изменений в /etc/X11/wmsession.d
вызывает скрипт конфигурации DM.
скрипт конфигурации DM вызывает runwm --list
runwm --list смотрит в /etc/X11/wmsession.d
получает список токенов
Plasma
Mate
IceWM
default
Прописывает их в меню DM: (к примеру)
WM_session=Plasma,Mate,IceWM,default

DM вызывает с этим токеном /etc/X11/Xsession,
к примеру,
/etc/X11/Xsession IceWM
Xsession, выполнив свои вызовы и настройки,
вызывает с этим токеном runwm:
к примеру,
runwm IceWM

Как это работает сейчас?

С появлением freedesktop-совместимых DM,
они начали смотреть в /usr/share/xsessions/,
что не работало со схемой выше.

В итоге для тех из них, кто хочет запускать /etc/X11/Xsession,
добавили хак #36913, см.
https://bugzilla.altlinux.org/show_bug.cgi?id=36913
добавив схему, когда freedesktop-совместимый DM,
смотрит в /usr/share/xsessions/ и вызывает
/etc/X11/Xsession со скриптом из ключа Exec= desktop файла.
Xsession, выполнив свои вызовы и настройки,
вызывает с этим скриптом runwm:
runwm /usr/bin/starticewm

runwm /usr/bin/starticewm ищет /usr/bin/starticewm
( ищет не в /usr/share/xsessions/, а в /etc/X11/wmsession.d !! )
и если находит, то запускает, иначе пишет, что нет такого wm.

Это достаточно кривой костыль, и для работы требует
одновременно и /etc/X11/wmsession.d и /usr/share/xsessions/,
при чем runwm не видит /usr/share/xsessions/.

Шаг 1 к переходу на стандарты freedesktop.

В Сизифе и в очереди к p10 находится пакет wm-select.git=0.9.8-alt1,
в котором, кроме wm-select, есть кандидат на замену старого runwm,
упакован как runwm.test, чтобы можно было потестировать и сравнить,
runwm.test --list
runwm --list

runwm.test по умолчанию и с опцией --alt читает /etc/X11/wmsession.d и эмулирует
старый runwm.

runwm.test с опцией --xdg (в будущем по умолчанию) читает /usr/share/xsessions/.
runwm.test так же поддерживает хак #36913.

В сборочнице в #289869 находится на тестирование пакет wm-select,
#289869 TESTED #1 [test-only] sisyphus wm-select.git=0.9.8-alt2 xinitrc.git=2.4.47-alt3

где новый runwm собран самостоятельным подпакетом runwm,
и минимально правленный xinitrc, который
1) владеет каталогом /usr/share/xsessions/
2) файлтриггер срабатывает и на каталог /usr/share/xsessions/
3) вместо старого runwm берется runwm из подпакета runwm пакета wm-select.

И первый шаг заключается в #289869 -- заменить старый runwm
на runwm, умеющий читать /usr/share/xsessions/,
затем включить в runwm /usr/share/xsessions/

При таком изменении получим
1) /etc/X11/wmsession.d станет не нужен,
2) Можно будет сохранить работоспособность старых не-freedesktop DM,
за счет добавления freedesktop-обвязки в новый runwm

и можно будет двигаться дальше.

Прошу тестировать и одобрять.

-- 

I V


             reply	other threads:[~2021-11-16 15:59 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-16 15:59 Igor Vlasenko [this message]
2021-11-17  8:23 ` [devel] abandon default sessuin (was: Пошаговый переход Display_Manager_Policy к стандартам freedesktop.) Sergey V Turchin
2021-11-17 10:52   ` [devel] abandon default session Alexey V. Vissarionov
2021-11-17 10:59     ` Sergey V Turchin
2021-11-17 13:32       ` Igor Vlasenko
2021-11-17 13:37         ` Sergey V Turchin
2021-11-17 15:31           ` Igor Vlasenko
2021-11-17 16:03             ` Arseny Maslennikov
2021-11-17 16:27             ` Alexey V. Vissarionov
2021-11-17 17:44               ` Igor Vlasenko
2021-11-17 13:41         ` Sergey V Turchin
2021-11-17 15:06           ` Igor Vlasenko
2021-11-18  7:38             ` Sergey V Turchin
2021-11-17 13:43         ` Sergey V Turchin
2021-11-17 13:21     ` Igor Vlasenko
2021-11-20  9:31 ` [devel] Пошаговый переход Display_Manager_Policy к стандартам freedesktop Fr. Br. George

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211116155915.GA6869@dad.imath.kiev.ua \
    --to=vlasenko@imath.kiev.ua \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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