My xmonad configuration (and related files)


My xmonad configuration (and related files)

This repository hosts my complete xmonad configuration, and also serves to document my trials and errors as I attempt to make everything work exactly the way that I want. Perhaps it will be useful for other (novice) xmonad users.


  1. Check out the repository to some location ${REPO_DIR}.

  2. Make {HOME}/.xmonad a link to ${REPO_DIR}:

       ln -s ${REPO_DIR} ${HOME}/.xmonad
  3. Restart xmonad:

       xmonad --recompile && xmonad --restart

Configuration files

  • xmonad.hs: the main configuration file for xmonad.
  • bin/: supporting scripts.
  • etc/: additional (non-xmonad) configuration files.
  • lib/: custom configuration modules that are used by xmonad.hs.
  • share/: supporting files (eg, application menu entries).

Provided scripts

  • launches trayer with the desired configuration.
  • lists the windows on the current workspace.
  • uses dmenu to list the windows on the current workspace and activate the selected window.

Supporting tools

  • dmenu: a keyboard-driven menu, used to here to select windows from the workspace.
  • feh: used to set the desktop background.
  • gmrun: an application launcher with a searchable history.
  • kupfer: a query interface for applications, documents, etc.
  • trayer: a simple icon tray for programs such as nm-applet.
  • wmctrl: a command-line tool for interacting with a window manager.
  • xmenud: a popup menu that displays the XDG menu.
  • xmobar: a minimalist textual status bar.

Useful references


The contents of this repository are distributed under the conditions of the BSD 3-Clause License (see the licence template).

Copyright © Rob Moss, 2011--2014.

<!--| Definitions of URLs cited above. |-->