When xfce4-session is init, currently it sets the X11 atoms _DT_SAVE/RESTORE_MODE to xfce4. This is one way that enables us to discover if the running session is Xfce or not.
A better way should be to export the environment variable DESKTOP_SESSION to xfce4.
Reassign to firstname.lastname@example.org.
Created attachment 3347
Set DESKTOP_SESSION in xinitirc.
Is everybody ok with this?
Maybe we should check if this is not set.
Pushed to git master with a check.
Reopening this, because this commit breaks starting X from runlevel 3 for us (Slackware).
GDM/KDM/other gui login managers have always been the only things that set DESKTOP_SESSION, so we check to see if that's set to know whether we should call "ck-launch-session xfce4-session" (runlevel 3) or just plain "xfce4-session" (GDM/KDM/etcetera).
It seems that it would be better to export some other variable to know that Xfce is the running session - for example, KDE uses KDE_FULL_SESSION or some such.
The bug has been reopened because it relates to the console-kit issues and something else related to Slackware specifically.
I don't believe we will fix this issue, but it should be opened in a new bug.
Ideally you would never need to call ck-launch-session, but currently it's what f.e. even ArchLinux recommends when starting from a TTY. Patching Xfce to call ck-launch-session is a quick-n-dirty hack, but it's not what the DE should be handling, and is something Xfce will never do (Jannis's been there done that and reverted it.)