You are not logged in.
How does session selection work in lxdm? It detects gnome and awesome (via the desktop files in /usr/share/xsessions?) as expected, however i am unable to chose one of them. The upstream /etc/lxdm/Xsession seems somewhat obscure to me, but i figured it should receive a session as $1, since its states:
if [ $# -eq 1 -a -n "$1" ]; then
LXSESSION=$1
else
# default session
LXSESSION=/usr/bin/startlxde
fi
Though, the default file did not work for me. I put echo "$@" in the beginning of the script and it always outputs "startlxde" instead of the session i choose at the login screen. As a temporarily solution i emptied /etc/lxdm/Xsession and put this in it:
exec ck-launch-session gnome-session
So i have to launch awesome via xinit currently. How can i distinguish between different sessions within lxdm?
Last edited by Wey (2011-08-11 15:46:15)
Offline
Does it work out of the box for everyone else? I'm currently running lxdm-git, compiled with --enable-gtk3, but i had the same issue with the stock lxdm. /var/log/lxdm.log says:
** Message: find greeter (nil)
** Message: find idle 0x8c7aa38
** Message: add 0x8c7aa38
** Message: prepare greeter on :0
** Message: start greeter on :0
** (process:534): DEBUG: user felix auth ok
** (process:534): DEBUG: login user felix session startlxde lang (null)
I wondered if lang (null) might be causing problems. I had a quick look at lxdm.c and there is a statement like
if(!session ||!session[0] || !lang || !lang[0])
{
Does lang have non-null values for anyone?
Offline
Does lang have non-null values for anyone?
I did not used lxdm for a while, but my old ldxm.log shows instead if (null) the locale setting, which is for instance de_DE.UTF-8 for me.
** (process:1033): DEBUG: user user1 auth ok
** (process:1033): DEBUG: login user user1 session /usr/bin/startkde lang de_DE.UTF-8
Offline
Thanks for your input arlite, it seems to be partially solved now. I set lang=1 in the [display] section /etc/lxdm/lxdm.conf and choose my locale at the login screen. The log showed the right locale now, but the session was still startlxde instead of gnome-session or awesome. Then i tried to put session=gnome-session:awesome in the [base] section, which worked surprisingly. Actually i had tried this before and it never had an effect. I experimentally set lang=0 again and session selection would fail.
So it needs an enumeration of sessions in lxdm.conf and a locale. It seems ridiculous to me, since it already generated a enumeration of sessions based on the content of /usr/share/xsessions.
It is only partially solved though, since i lose my keyboard in awesome if launched through lxdm...
Offline
Strange, if i autostart an application from rc.lua, the keyboard gets activated again. So for now i'll just settle on spawning a terminal on login, which seems to be an acceptable workaround for me. Therefore I mark this as solved.
Offline