Overview

Request 838503 superseded

- moved xdm/xdm-np PAM files to /usr/etc/pam.d, since lightdm has
been adjusted meanwhile

- Switch to /usr/bin/pidof dependency, provided by procps-ng.

- fixes in xdm-tarball.patch
* /usr/lib/X11/display-manager: fixes sddm, which didn't use
xdm_reload_files in xdm_start_proc() of
/usr/lib/X11/displaymanagers/sddm (boo#1173049)

- fixes in xdm-tarball.patch
* symlink also $XDMDIR/xinitrc.common in /etc/X11/xinit; it
is still often sourced in old ~/.xinitrc user files ...

- fixes in xdm-tarball.patch
* fixed include path for generic Xresources in xdm's Xresources file
* fixed $XDMDIR in Xsession, so sys.xsession can be found
* sys.xsession: fixed syntax error in code, which reads
additional xdm scripts
* display-manager: also symlink Xstartup and Xreset in
/etc/X11/xdm (needed by lighdm)
- specfile:
* for now use again /etc/pam.d for xdm/xdm-np PAM files instead
of /usr/etc/pam.d (using the latter resulted in
"authentificataion failure" with lightdm)

- reenabled move to /usr/etc/X11/xdm; updated xdm-tarball.patch
(includes changes from xinit-UsrEtcMove.patch) [boo#1176212]

- xinit-UsrEtcMove.patch
* changes needed with xinitrc moving to %{_libexecdir}/xinit and
xinitrc.common moving to /usr/etc/X11/xinit/

- reverted move to /usr/etc/X11/xdm for now due to boo#1176212

- updated xdm-tarball.patch
* adjusted for changes in xmodmap and xinit (boo#1173049)

- xdm-tarball.patch
* /usr/etc changes still needed for xdm.tar.bz2; will need
more changes once xmodmap and xinit files are also moved to
/usr/etc (boo#1173049)

- move /etc/X11/xdm --> /usr/etc/X11/xdm and
/etc/pam.d -> /usr/etc/pam.d; still TODO: adjust scripts in
xdm.tar.bz2 (boo#1173049)

- more cleanup
* no longer support sle12; adjusted xdm.tar.bz2 and
applied xdm-with-update-alternative.patch to this tarball

- cleanup
* get rid of xdm-fallbacks.tar.bz2, which wasn't used any longer
since SUSE 12.1
* no longer support systmed based OSes like SUSE < 12.1 and sle11;
removed therefore also xdm-consolekit.diff
* no longer support sle11

Loading...

Fabian Vogt's avatar

That way the package only looks like it doesn't ship files in /etc, while it still does. Having it tracked by rpm is much better there, compared to managing the files with a custom script which almost nobody looking at the package will be aware of...


Stefan Dirsch's avatar
author reviewer source maintainer

These compatibilty symlinks are mainly created because other DMs like lightdm, sddm, gdm (still) need them and/or not configurable to use files below /usr/etc instead (let alone having priorities for /etc, then /usr/etc). xdm does not need these. It's configurable via /etc/X11/xdm/xdm-config. This one and /etc/X11/xdm/Xservers are still needed since they are edited by a script executed by display-manager, which reads settings from /etc/sysconfig/displaymanager to do so.

I have been told, it should be possible to remove anything below /etc and afterwards the system should still be working, at least after a reboot. This is being accomplished by this implementation but not when I package files below /etc.


Fabian Vogt's avatar

I have been told, it should be possible to remove anything below /etc and afterwards the system should still be working, at least after a reboot. This is being accomplished by this implementation but not when I package files below /etc.

That's the ultimate goal, yes. But using this implementation it's not actually true, it's just a hack around those DMs using /etc only. So I really recommend to make that explicit by packaging files in /etc and blaming DMs for that, instead of "cheating".

Fixing those DMs should actually be fairly simple, as it's just hardcoding a different path. But that's only really possible once the /usr/etc counterparts are properly in Tumbleweed. So for the time being the xdm package would provide compatibility symlinks below /etc, then DMs can be fixed to not rely on them and finally those compat symlinks can be dropped.


Stefan Dirsch's avatar
author reviewer source maintainer

Ok. I'm tracking this now for sddm and lighdm in boo#1177195 and boo#1177197, which again block xdm /usr/etc move boo#1173049.


Dominique Leuenberger's avatar
278+### authentification failure with lightdm when using /usr/etc/pam.d
279+#%if 0%{?UsrEtcMove}
280+#%{_distconfdir}/pam.d/xdm
281+#%{_distconfdir}/pam.d/xdm-np
282+#%else

doh :) now I see why lightdm fails in Staging:J - that's because I fixed the location of the link for lightdm in SR#835216 - this switch can be enabled, we're ready for that


Dominique Leuenberger's avatar

also, I just submitted sr#838484 for lightdm, that will make things even more robust, also in light of an admin copying the /usr/etc/pam.d templates and instantiate them in /etc/pam.d

Request History
Stefan Dirsch's avatar

sndirsch created request

- moved xdm/xdm-np PAM files to /usr/etc/pam.d, since lightdm has
been adjusted meanwhile

- Switch to /usr/bin/pidof dependency, provided by procps-ng.

- fixes in xdm-tarball.patch
* /usr/lib/X11/display-manager: fixes sddm, which didn't use
xdm_reload_files in xdm_start_proc() of
/usr/lib/X11/displaymanagers/sddm (boo#1173049)

- fixes in xdm-tarball.patch
* symlink also $XDMDIR/xinitrc.common in /etc/X11/xinit; it
is still often sourced in old ~/.xinitrc user files ...

- fixes in xdm-tarball.patch
* fixed include path for generic Xresources in xdm's Xresources file
* fixed $XDMDIR in Xsession, so sys.xsession can be found
* sys.xsession: fixed syntax error in code, which reads
additional xdm scripts
* display-manager: also symlink Xstartup and Xreset in
/etc/X11/xdm (needed by lighdm)
- specfile:
* for now use again /etc/pam.d for xdm/xdm-np PAM files instead
of /usr/etc/pam.d (using the latter resulted in
"authentificataion failure" with lightdm)

- reenabled move to /usr/etc/X11/xdm; updated xdm-tarball.patch
(includes changes from xinit-UsrEtcMove.patch) [boo#1176212]

- xinit-UsrEtcMove.patch
* changes needed with xinitrc moving to %{_libexecdir}/xinit and
xinitrc.common moving to /usr/etc/X11/xinit/

- reverted move to /usr/etc/X11/xdm for now due to boo#1176212

- updated xdm-tarball.patch
* adjusted for changes in xmodmap and xinit (boo#1173049)

- xdm-tarball.patch
* /usr/etc changes still needed for xdm.tar.bz2; will need
more changes once xmodmap and xinit files are also moved to
/usr/etc (boo#1173049)

- move /etc/X11/xdm --> /usr/etc/X11/xdm and
/etc/pam.d -> /usr/etc/pam.d; still TODO: adjust scripts in
xdm.tar.bz2 (boo#1173049)

- more cleanup
* no longer support sle12; adjusted xdm.tar.bz2 and
applied xdm-with-update-alternative.patch to this tarball

- cleanup
* get rid of xdm-fallbacks.tar.bz2, which wasn't used any longer
since SUSE 12.1
* no longer support systmed based OSes like SUSE < 12.1 and sle11;
removed therefore also xdm-consolekit.diff
* no longer support sle11


Factory Auto's avatar

factory-auto added opensuse-review-team as a reviewer

Please review sources


Factory Auto's avatar

factory-auto accepted review

Check script succeeded


Saul Goodman's avatar

licensedigger accepted review

ok


Dominique Leuenberger's avatar

dimstar accepted review


Dominique Leuenberger's avatar

dimstar_suse set openSUSE:Factory:Staging:J as a staging project

Being evaluated by staging project "openSUSE:Factory:Staging:J"


Dominique Leuenberger's avatar

dimstar_suse accepted review

Picked "openSUSE:Factory:Staging:J"


Fabian Vogt's avatar

favogt_factory added sndirsch as a reviewer

AFAICT /usr/lib/X11/display-manager creates compatibility symlinks in /etc/X11/ on demand.
As those are unconditionally created, why not ship them as %config(noreplace) in the package?
That way they're cleaned up properly and can be removed later.


Stefan Dirsch's avatar

sndirsch added sndirsch as a reviewer

@Fabian: I wanted to get rid of files below /etc in the package, so I came up with the idea of creating the ones still necessary on demand. At least now you can remove /etc/X11/xdm completely and once you're restarting display-manager, i.e. any DM the system is still working.


Stefan Dirsch's avatar

sndirsch accepted review


Stefan Dirsch's avatar

sndirsch declined review


Stefan Dirsch's avatar

sndirsch declined request


Stefan Dirsch's avatar

sndirsch reopened request

reopen. I declined the review not the request.


Stefan Dirsch's avatar

sndirsch superseded request

superseded by 839332

openSUSE Build Service is sponsored by