I'm running latest Arch with native systemd + slim +openbox.
I think that a recent change has changed the way that slim + openbox is working.
slim.service is working and I can log in
openbox is started via .xinitrc using exec openbox-session
in a terminal I see that
$ loginctl --no-pager show-session $XDG_SESSION_ID | grep Active
so session management with systemd-logind appears to be working. However, I can only logout once from openbox using openbox --exit.
The first time I do this slim reappears and I can log back in. The second time logout gets bumped to the console; I can restart slim.service to get back in.
How should I be starting openbox ie do I need ck-launch-session / dbus-launch any longer?
How should I be exiting openbox? Is openbox --exit the right way?
Is this the same issue as https://bbs.archlinux.org/viewtopic.php?id=151304
With systemd-logind as session manager, you should not use console kit and the 'ck-launch-session' which comes with it.
If you created your ~/.xinitrc from the '/etc/skel/.xinitrc' template and so have these lines in it:
if [ -d /etc/X11/xinit/xinitrc.d ]; then for f in /etc/X11/xinit/xinitrc.d/*; do [ -x "$f" ] && . "$f" done unset f fi
you don't need to use the dbus-launch command either, as a session dbus instance is already existing.
Personally I don't use slim but only startx, and I want to return to a console prompt when I exit openbox.
I use the 'Exit' action in the main menu (I don't see the command line --exit parameter in the doc).
In your case, you want to return to the slim login screen, and if it doesn't return to it, I tend to think it is a problem with the slim service file.
Is there a 'Restart=always' in it?
Last edited by berbae (2013-04-26 16:02:12)
My /etc/ske/.xinitrc deosn't contain any of the above. My slim.service is the standard one and has no Restart. Adding a Restart=always does fix the issue, but why one logout is allowed and two not is beyond me. Openbox does have a --exit option according to openbox --help
Passing messages to a running Openbox instance:
--reconfigure Reload Openbox's configuration
--restart Restart Openbox
--exit Exit Openbox
The arch wiki page on Systemd/User suggest we should all be running systemd --user and handling our own services that way. Any ideas if that's a good idea? Systemd seems quite volatile at present.