in the process of reinstalling ubuntu raring 13.04 (or possibly during the initial upgrade to 13.04 from 12.10) lightdm got confused. it would display the greeter, i'd provide my password and then it would attempt to start my session, ie the screen would go momentarily black. but instead of starting unity, it would fail and restart the greeter. i don't have any of the old logs, but i believe the message was to the effect of "invalid session: xterm". (i believe that i set this session fucking around with settings, but it could also have been an valid session that has since been deleted - when i reinstalled i omitted many packages)
the greeter didn't give an option to choose a session, so i had to talk to dbus directly (which may very well be how i got in trouble in the first place:)
# list the sessions (ignore the .desktop suffix)
# note: they might not all be valid, eg because the software hasn't been installed
ls /usr/share/xsessions
# get the dbus name for the current user
user=$(dbus-send --print-reply=literal --system --dest=org.freedesktop.Accounts /org/freedesktop/Accounts org.freedesktop.Accounts.FindUserById int64:$(id -u))
# set the session (replace ubuntu with another valid session if desired)
sudo dbus-send --print-reply --system --dest=org.freedesktop.Accounts $user org.freedesktop.Accounts.User.SetXSession string:'ubuntu'
lightdm should really provide a means to select your profile. by default, it doesn't if there's only one valid session. however, the session that it uses is the "current session", ie the one that it gets from dbus, which might not be the valid session. little bit of catch-22. in theory, i should submit a bug report. in reality, canonical will sit on it for 7 years regardless, so fuck em
No comments:
Post a Comment