paulgorman.org/technical
  1. Set Xfce as you window manager, if it’s not already, with:

    update-alternatives –config x-window-manager

  2. Start a new Xfce session. (Restart gdm3 service, if necessary.)

  3. In Xfce, Settings -> Desktop -> Icons tab -> Icon type set to None.

  4. In Xfce, Settings -> Session and Startup -> Application Autostart tab, add a new autostarted application with the command being simply ‘xmonad’. Make sure it’s ticked. (Note: this doesn’t seem to actually work. See shell script at end of this document.)

  5. In Xfce, Settings -> Keyboard -> Application Shortcuts tab, delete all shortcuts.

  6. Edit or create the file ~/.xmonad/xmonad.hs, with these contents:

    import XMonad import XMonad.Util.EZConfig import XMonad.Layout import XMonad.Layout.Fullscreen import XMonad.Layout.NoBorders import XMonad.Hooks.ManageDocks import XMonad.Config.Xfce import XMonad.Layout.ResizableTile

    myLayout = avoidStruts ( tall ||| Mirror tall ||| Full ) ||| noBorders (fullscreenFull Full) where tall = ResizableTall 1 (3100) (710) []

    myManageHook::ManageHook

    myManageHook = composeAll [ className =? “Gimp” –> doFloat , className =? “Vncviewer” –> doFloat , className =? “Xfce4-notifyd” –> doIgnore ] main = xmonad $ xfceConfig { layoutHook = myLayout , terminal = “urxvt” , focusedBorderColor = “Deep Pink” , borderWidth = 2 , manageHook = myManageHook <+> manageHook xfceConfig } additionalKeysP [ (“M--”, spawn “rxvt-unicode”) , (“M-p”, spawn “exec dmenu_run -b”) , (“M-q”, restart “xmonad” True) , (“M–”, sendMessage MirrorShrink) , (“M-=”, sendMessage MirrorExpand) ]

  7. Recompile xmonad with xmonad --recompile. (This may not be necessary.)

  8. Run killpidof xfwm4&& xmonad &.

  9. Create ‘~/bin/kill_xfwm_start_xmonad.sh’:

    #!/bin/sh kill pidof xfwm4 && /usr/bin/xmonad &

and chmod u+x kill_xfwm_start_xmonad.sh. I made a launcher point to this in xfce, in case Xmonad doesn’t start.

http://www.haskell.org/haskellwiki/Xmonad/Using_xmonad_in_XFCE http://www.cattlegrid.info/blog/2009/08/xfce-and-xmonad-under-gentoo-l.html http://dingyichen.wordpress.com/2012/12/07/add-xmonad-xfce-to-gdm/