Xmonad es un gestor de ventanas en cascada minimalista para X, escrito en Haskell. Las ventanas se gestionan usando algoritmos de distribución automática, que se pueden reconfigurar dinámicamente. En cualquier momento las ventanas se organizan de modo que se maximice el uso de la pantalla.
Todas las características del gestor de ventanas son accesibles desde el teclado: el ratón es totalmente opcional. Xmonad se configura en Haskell, y el usuario puede crear algoritmos de distribución personalizados en los archivos de configuración. Un principio de Xmonad es ser predecible: el usuario debería saber con precisión la organización de las ventanas que
resultarán de cualquier acción.
Por sugerencia de algunos colegas lo utilizaba junto con las barras de gnome, pero hasta hace poco decidí ahorrar un poco mas de recursos y opté por utilizar solo el panel de XFCE.

El archivo de configuración se encuentra en ~/.xmonad/xmonad.hs. Es un archivo es haskell y cada vez que se realicen cambios es necesario recompilarlo con el comando xmonad --recompile.
Para iniciar automáticamente xfce4-panel y xfce-mcs-manager (el gestor de propiedades de xfce) colocamos en el xmonad.hs lo siguiente (luego de las líneas import):
startup :: X ()
startup = do
spawn "xfce-mcs-manager"
spawn "xfce4-panel"
y recompilamos:
xmonad --recompile
Luego reiniciamos xmonad con Mod-q (por defecto la tecla Mod es Alt).