Set Xfce as you window manager, if it’s not already, with:
update-alternatives –config x-window-manager
Start a new Xfce session. (Restart gdm3 service, if necessary.)
In Xfce, Settings -> Desktop -> Icons tab -> Icon type set to None.
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.)
In Xfce, Settings -> Keyboard -> Application Shortcuts tab, delete all shortcuts.
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 (3⁄100) (7⁄10) []
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-
Recompile xmonad with xmonad --recompile
. (This may not be necessary.)
Run kill
pidof xfwm4&& xmonad &
.
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/