> From: Lionel Le Folgoc <mrpo...@gmail.com>
> Sent: Wed, March 9, 2011 1:47:00 AM > How do you start your Xfce session? I login via xdm. Never had a problem with previous versions of Xfce. > You should have the following env var set: > XDG_MENU_PREFIX=xfce- Hmmm... $ echo $XDG_MENU_PREFIX $ > And garcon looks for $d/menus/${XDG_MENU_PREFIX}applications.menu > (with $d in $XDG_CONFIG_DIRS, or /etc if empty). $ echo $XDG_CONFIG_DIRS $ > This is usually set by /etc/xdg/xfce4/xinitrc, spawned by > /usr/bin/startxfce4 (both from xfce4-utils >= 4.8.0). Since those environment variables do not get set, I'm going to have to say that 'xdm' bypasses the setup you folks are expecting to have happen. Looking at /etc/X11/xdm, I see the following in 'xdm-config': DisplayManager*startup: /etc/X11/xdm/Xstartup DisplayManager*session: /etc/X11/xdm/Xsession DisplayManager*setup: /etc/X11/xdm/Xsetup DisplayManager*reset: /etc/X11/xdm/Xreset The 'Xsession' script is a one-liner: . /etc/X11/Xsession So, 'xdm' hands off to 'x11-common', which does this ... SYSSESSIONDIR=/etc/X11/Xsession.d ... SESSIONFILES=$(run-parts --list $SYSSESSIONDIR) if [ -n "$SESSIONFILES" ]; then set +e for SESSIONFILE in $SESSIONFILES; do . $SESSIONFILE done set -e fi Now looking in Xsession.d/, there is '40x11-common_xsessionrc' which would run ~/.xsession if I had one. I do not. The fallback seems to be in '50x11-common_determine-startup': # If there is still nothing to use for a startup program, try the system # default session manager, window manager, and terminal emulator. if [ -z "$STARTUP" ]; then if [ -x /usr/bin/x-session-manager ]; then STARTUP=x-session-manager elif [ -x /usr/bin/x-window-manager ]; then STARTUP=x-window-manager elif [ -x /usr/bin/x-terminal-emulator ]; then STARTUP=x-terminal-emulator fi fi Those are not programs but symlinks to the Debian alternatives system: # la -d /usr/bin/x-* [...] /usr/bin/x-session-manager -> /etc/alternatives/x-session-manager [...] /usr/bin/x-terminal-emulator -> /etc/alternatives/x-terminal-emulator [...] /usr/bin/x-window-manager -> /etc/alternatives/x-window-manager [...] The alternatives seem to be set appropriately: # la -d /etc/alternatives/x-* [...] /etc/alternatives/x-session-manager -> /usr/bin/xfce4-session [...] /etc/alternatives/x-session-manager.1.gz -> /usr/share/man/man1/xfce4-session.1.gz [...] /etc/alternatives/x-terminal-emulator -> /usr/bin/xfce4-terminal.wrapper [...] /etc/alternatives/x-terminal-emulator.1.gz -> /usr/share/man/man1/xfce4-terminal.wrapper.1.gz [...] /etc/alternatives/x-window-manager -> /usr/bin/xfwm4 [...] /etc/alternatives/x-window-manager.1.gz -> /usr/share/man/man1/xfwm4.1.gz [...] Believe it or not, this was working for me in the past -- just having x11-common run xfce4-session! (I never knew how any of this worked until looking at it just now.) It looks like Xfce needs much more environment setup than what x11-common knows about. I wonder if you should declare a dependency conflict with 'xdm'? Or is there some way to allow 'startxfce4' to be called by x11-common through the alternatives system? Maybe this bug report should be retitled to reflect that xdm currently cannot run Xfce 4.8 with the proper environment set up, and the severity should certainly be lowered below important. (I was assuming actual breakage between the Xfce packages, which turns out not to be the case.) Thanks, and please advise... Dave W. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org