On 03/06/2014 10:29 PM, David C. Rankin wrote:
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.
Attempting to launch tdm with an inti script in arch does not fix the user
session problem. After launching with the old init, I still get:
cat XDG_SESSION_ID-init.txt
NAutoVTs=6
KillExcludeUsers=root
KillUserProcesses=no
IdleHint=no
IdleSinceHint=1394169840146533
IdleSinceHintMonotonic=610563642
BlockInhibited=handle-power-key:handle-suspend-key:handle-hibernate-key:handle-lid-switch
InhibitDelayMaxUSec=5s
HandlePowerKey=poweroff
HandleSuspendKey=suspend
HandleHibernateKey=hibernate
HandleLidSwitch=suspend
IdleAction=ignore
IdleActionUSec=30min
PreparingForShutdown=no
PreparingForSleep=no
( I do get more shutdown/hibernate/suspend options though )
--
David C. Rankin, J.D.,P.E.