As far as I can tell, the "XClient script" it refers to is:
/usr/share/gdm/BuiltInSessions/default.desktop
which calls (by special "exec" keyword):
/etc/X11/xinit/xinitrc
which sources:
/etc/X11/Xsession
Xsession then sources:
~/.xsession
from:
/etc/X11/Xsession.d/40x11-common_xsessionrc
So putting all that together, linking the xfce4 xinitrc script to ~/.xsession should make everything work properly as if you had explicitly chosen the "Xfce session" with startxfce4.
ln -s /etc/xdg/xfce4/xinitrc /home/sage/.xsession
Ps. This is also a problem for applications like Banshee and last-exit which rely on the environment variable DBUS_SESSION_BUS_ADDRESS to connect to DBus; that variable only gets exported from the xfce4 xinitrc script, so without the link to ~/.xsession they cannot connect to the session bus.
As far as I can tell, the "XClient script" it refers to is:
/usr/share/ gdm/BuiltInSess ions/default. desktop
which calls (by special "exec" keyword):
/etc/X11/ xinit/xinitrc
which sources:
/etc/X11/Xsession
Xsession then sources:
~/.xsession
from:
/etc/X11/ Xsession. d/40x11- common_ xsessionrc
So putting all that together, linking the xfce4 xinitrc script to ~/.xsession should make everything work properly as if you had explicitly chosen the "Xfce session" with startxfce4.
ln -s /etc/xdg/ xfce4/xinitrc /home/sage/ .xsession
Ps. This is also a problem for applications like Banshee and last-exit which rely on the environment variable DBUS_SESSION_ BUS_ADDRESS to connect to DBus; that variable only gets exported from the xfce4 xinitrc script, so without the link to ~/.xsession they cannot connect to the session bus.