On 03/06/2014 09:57 PM, David C. Rankin wrote:
Slavek,
We need to check your and Francios setup. I think your are still using the
init-script to launch tdm which invokes systemd-sysvcompat (/usr/bin/init)
instead of pure-systemd. My goal is to have TDE function with pure-systemd.
Or at least in Francios case it is. With arch, you have tdm.service to user
pure-systemd to manager tdm. The tdm.service file for Arch is:
$ cat ~/tde/pbpkg/tde-tdebase/tdm.service
[Unit]
Description=TDE Display Manager
After=systemd-user-sessions.service
[Service]
ExecStart=/opt/trinity/bin/tdm
[Install]
Alias=display-manager.service
This is pure-systed. There is no wrapper script that ultimately launches some
wrapper with "exec something".
In Francios setup on Mageia, that is exactly what happens. The Mageia service
file is:
cat prefdm.service
[Unit]
Description=Display Manager
After=livesys-late.service systemd-user-sessions.service
# On Mageia gdm/X11 is on tty1. We explicitly cancel the getty here to
# avoid any races around that.
# Do not stop plymouth, it is done in prefdm if required (or left to the dm)
Conflicts=getty(a)tty1.service plymouth-quit.service
After=getty(a)tty1.service plymouth-quit.service
OnFailure=display-manager-failure.service
[Service]
ExecStart=/etc/X11/prefdm -nodaemon
Restart=always
RestartSec=0
IgnoreSIGPIPE=no
That service file does not launch a display manager, it calls the wrapper
script prefdm which essentially calls /etc/X11/lookupdm to get the name of the
display manager via (45TDE and 45TDE.conf) and then does:
preferred=`/etc/X11/lookupdm "$dm"`
[ -n "$preferred" ] && exec $preferred "$@" >/dev/null
2>&1 </dev/null
That isn't systemd -- that is systemd-sysvcompat. That setup just relies on
getting "EXEC=/opt/trinity/bin/tdm" from 45TDE.conf and then launching it as an
init script.
We need TDE to work with systemd.
--
David C. Rankin, J.D.,P.E.