Running Xfce from a display manager
If use you a login manager like GDM or LightDM, you may have two ways to start
- “Xfce Session” will run a complete xfce session, using Xfce-provided
scripts (/usr/bin/startxfce4 which will then run /etc/xdg/xfce4/xinitrc
- “Default session” will run whatever is the default session manager on
your system. This is the /usr/bin/x-session-manager alternatives, meaning
you can tune it with update-alternatives (8). If you only have Xfce
installed on your system, it will default to startxfce4, which will run the
complete Xfce desktop environment.
GDM and LightDM will initialize ConsoleKit so you should be able to manage your
computer (mount removable devices, suspend, shutdown or hibernate etc.).
Running Xfce from the console
If you don't use a login manager but start Xfce from console, you need to take
care of few stuff in order to get a complete Xfce session with full permission
(mount, suspend/shutdown/hibernate etc.) This is because Debian now uses
PolicyKit/ConsoleKit to manage policies for things like device and power
management. If you run Xfce from a compatible display manager (like gdm or
lightdm), they'll talk to consolekit so your X session will have the
authentication tokens, but if you use startx, it won't.
* only use startx, without any argument
* don't use a .xinitrc, use .xsession
This is because ConsoleKit ships an init script
(/etc/X11/Xsession.d/90consolekit), but the /etc/X11/Xsession.d/ scripts are
only executed if you don't use any .xinitrc. See startx (1) for more
Then you need to fine-tune your pam installation so ConsoleKit can be sure that
your user is correctly authenticated. For that, you need to:
* install libpam-ck-connector
session optional pam_loginuid.so
*before* pam_ck_connector.so in /etc/pam.d/common-session.