
Alexander Genaud
xfceConfig specifies Xfce's Terminal as the default terminal emulator in place of xterm, and rebinds mod-p (dmenu_run) to Xfce's application run dialog, mod-shift-p (gmrun) to xfce4-appfinder, and mod-shift-q (quit xmonad) to Xfce's session logout dialog. The latter is somewhat important, as the Xfce session manager would simply restart xmonad if it exited in the usual way.
Thanks. Incidentally, whether I use desktopConfig or xfceConfig, both produce the same error when I press mod-shift-Q and I don't seem to be able to logout:
Failed to receive a reply from the session manager The name org.xfce.SessionManager was not provided by any .service files
It sounds like what you're doing is running a vanilla xmonad session with a few xfce components (ie, the panel). The desktopConfig settings, and the derivatives like xfceConfig and gnomeConfig, generally expect you to be running the desktop environment with xmonad as a window manager. There is a subtle but important difference between these two models. When you start gnome or xfce, but set the window manager to xmonad, there are a number of services that are started for you. In your case, the important one is probably xfce4-session, which many of the xfce programs hook into in various ways. Your session starts xmonad, and then runs subcomponents without the session manager, which is why you see warnings. I think that you want to do one of two things: 1. Don't use desktopConfig/xfceConfig, and start xmonad with the xmonad session as you are now. If you do this you will probably need to use ewmhDesktops to get the xfce panel to work properly. 2. Start an xfce session, but configure it to use xmonad as a window manager. I don't know how to set this setting in xfce, but it's the usual use case for the xfceConfig/gnomeConfig/etc modules. In this case, you would choose xfce at the login screen, and it would start xmonad for you. I hope this is helpful, -- Bogner