xmonad is a fast and lightweight tiling-windowmanager for X11 written, configured and extended in the purely-functional programming language Haskell.
Generally, there are two ways to install XMonad:
- Install x11-wm/xmonad
emerge --ask xmonad
- Install it with cabal:
cabal install xmonad
To start xmonad you can use a display manager or startx.
If want to use startx and want ConsoleKit support, setup ConsoleKit and create the following file:
exec ck-launch-session dbus-launch --sh-syntax --exit-with-session xmonad
XMonad itself can be configured through ~/.xmonad/xmonad.hs which is written in Haskell.
Minimal configuration file with default configuration:
import XMonad main = xmonad $ defaultConfig
Once you changed your config file you should compile it and restart XMonad.
In most cases to write a config file you need additional features provided by xmonad-contrib library. You can install it from x11-wm/xmonad-contrib
emerge --ask xmonad-contrib
OR using cabal:
cabal install xmonad-contrib
Adding status bars
Unlike many other window managers, XMonad does not have any built-in status bars. Instead of this it can pipe required information to external program. Usually, xmobar or dzen is a good choice for status bar.
- Install x11-misc/xmobar
emerge --ask xmobar
- Install x11-misc/dzen
emerge --ask dzen