xmonad comes in two parts.

  • The core package includes all you need to get up and running with a minimalist window manager.
  • The contrib package contains hundreds of extensions that can enhance the functionality of xmonad.

BSD/Linux distributions

xmonad is included in many distributions' package repositories. See if yours is one:

If you think a distribution is missing from this list, let us know.

Notes for Debian/Ubuntu users:

On debian, xmonad is split into three packages, and it might not be obvious what they do.

  • xmonad lets you run xmonad in its default configuration.
  • libghc-xmonad-dev lets you write a configuration file using core functionality.
  • libghc-xmonad-contrib-dev includes all of the contrib modules.

Notes for Ubuntu users only:

libghc6-x11-dev < 1.4.2-1 is not compiled with Xinerama (i.e. multi-head) support. This means that if you are running Hardy Heron or older and you want per-screen workspaces, you will need to install xmonad (and the Haskell X11 lib) from tarball.

From tarball

If you prefer to build on your own, you can get the official releases from hackage:

After you've downloaded, follow the install instructions and read the documentation on how to configure xmonad.

From git

Keep on the bleeding edge by tracking xmonad development:

git clone https://github.com/xmonad/xmonad
git clone https://github.com/xmonad/xmonad-contrib

You will need git to check out the code. From there, follow the install instructions just as with the tarball.

Alternatively, you can install the latest git revision as follows

cabal install https://github.com/xmonad/xmonad/archive/master.tar.gz
cabal install https://github.com/xmonad/xmonad-contrib/archive/master.tar.gz

Related tools

Here are some tools we've found work well with xmonad: