| Summary: | [opensuse] 15.1 & TW upgrade of xdm usurps tdm as /etc/alternatives/default-displaymanager | ||
|---|---|---|---|
| Product: | TDE | Reporter: | Felix Miata <mrmazda> |
| Component: | tdebase | Assignee: | Timothy Pearson <kb9vqf> |
| Status: | NEW --- | ||
| Severity: | normal | CC: | albator78, bugwatch, slavek.banko |
| Priority: | P5 | ||
| Version: | R14.0.x [Trinity] | ||
| Hardware: | amd64 | ||
| OS: | Linux | ||
| URL: | https://bugzilla.opensuse.org/show_bug.cgi?id=1131074 | ||
| Compiler Version: | TDE Version String: | ||
| Application Version: | Application Name: | ||
| Attachments: | xdm rpm for openSUSE 15.1 | ||
|
Description
Felix Miata
2018-10-16 00:52:25 CDT
This is still a problem. I forgot about having filed this report and filed one downsteam, which directed me to file upstream. A parallel or maybe the same problem is tde.desktop is not found by update-alternatives, so its symlink to /etc/alternatives/default-xsession.desktop needs to be created manually, which eventually gets overridden by normal system updates. Both files the /etc/alternatives/ symlinks point to are provided by trinity-tdm. # From /var/log/zypp/history tail
2019-04-15 00:34:25|install|trinity-tdebase-bin|14.0.6-1.oss150|x86_64||TDE|549529b2ddec247ab7bf4cce7d2069bd0d007131a0089033cd94f30a6a00aa27|
# 2019-04-15 00:34:43 trinity-tdm-14.0.6-1.oss150.x86_64.rpm installed ok
# Additional rpm output:
# update-alternatives: using /usr/lib/X11/displaymanagers/xdm to provide /usr/lib/X11/displaymanagers/default-displaymanager (default-displaymanager) in auto mode
#
2019-04-15 00:34:43|install|trinity-tdm|14.0.6-1.oss150|x86_64||TDE|e7a026a4b9e34923c7a2eb17a1b449f9db48fd5c0f9e00d4192a6e149dc227c9|
2019-04-15 00:35:02|install|trinity-libkonq|14.0.6-1.oss150|x86_64||TDE|b01d449387b66b9cbe757ccd63d05695b5f7bc8063b90bc1d80892185e283f08|
Whatever it is update-alternatives is supposed to be finding to assign tdm and tde when trinity-tdm is installed or updated is not being found:
# update-alternatives --config default-xsession.desktop
update-alternatives: warning: /etc/alternatives/default-xsession.desktop has been changed (manually or by a script); switching to manual updates only
There is 1 choice for the alternative default-xsession.desktop (providing /usr/share/xsessions/default.desktop).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/share/xsessions/icewm-session.desktop 15 auto mode
1 /usr/share/xsessions/icewm-session.desktop 15 manual mode
Press <enter> to keep the current choice[*], or type selection number:
# update-alternatives --config default-displaymanager
update-alternatives: warning: /etc/alternatives/default-displaymanager has been changed (manually or by a script); switching to manual updates only
There are 2 choices for the alternative default-displaymanager (providing /usr/lib/X11/displaymanagers/default-displaymanager).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/X11/displaymanagers/xdm 10 auto mode
1 /usr/lib/X11/displaymanagers/console 5 manual mode
2 /usr/lib/X11/displaymanagers/xdm 10 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Interesting, on Debian we see the same problem of replacing the default display manager and we do not yet know whether the problem is on our side or whether it is due to automatic behavior on the Debian side. Created attachment 2941 [details]
xdm rpm for openSUSE 15.1
There must be something in this rpm that belongs in trinity-tdm but is absent. The consequence of the absence is the lack of any line showing tdm when update-alternatives is run. What should happen is ~:
# update-alternatives --config default-displaymanager
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/X11/displaymanagers/tdm 15 auto mode
1 /usr/lib/X11/displaymanagers/console 5 manual mode
2 /usr/lib/X11/displaymanagers/xdm 10 manual mode
3 /usr/lib/X11/displaymanagers/tdm 15 auto mode
Oops, that #3 line should be manual mode, not auto mode, and possibly 20 or 25. https://lists.opensuse.org/opensuse-factory/2017-10/msg00575.html touches how to set it manually: /usr/sbin/update-alternatives --install /usr/lib/X11/displaymanagers/default- displaymanager default-displaymanager /usr/lib/X11/displaymanagers/kdm 15 Same thing on Tumbleweed. Before upgrade from 14.0.6 to 14.0.7 on host gx620: # update-alternatives --config default-displaymanager There are 3 choices for the alternative default-displaymanager (providing /usr/lib/X11/displaymanagers/default-displaymanager). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/X11/displaymanagers/tdm 15 auto mode 1 /usr/lib/X11/displaymanagers/console 5 manual mode * 2 /usr/lib/X11/displaymanagers/tdm 15 manual mode 3 /usr/lib/X11/displaymanagers/xdm 10 manual mode Press <enter> to keep the current choice[*], or type selection number: After the upgrade there are no tdm lines. That should have said after the upgrade of xdm followed by upgrade from 14.0.6 to 14.0.7 there are no tdm lines. Still happening in TW with 14.0.9. I always have to run /usr/sbin/update-alternatives --install /usr/lib/X11/displaymanagers/default-displaymanager default-displaymanager /usr/lib/X11/displaymanagers/tdm 15 after this happens. It works correctly when doing a new installation, but fails when updating packages. I think it's related to the order where the %post and %postun scripts are executed. First, the new package is installed, and runs its %post script, which add the displaymanager alternative. Second, the old package is removed, and runs its %postun script, which removes the displaymanager alternative. I have found a way to prevent this in the %postun script. The problem is, even I fix the 14.0.9 package, the update problem will remain because of the existing %postun section in 14.0.8 package. |