My xmonad configuration (and related files)
root
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.
Installation
Check out the repository to some location
${REPO_DIR}
.Make
{HOME}/.xmonad
a link to${REPO_DIR}
:ln -s ${REPO_DIR} ${HOME}/.xmonad
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 byxmonad.hs
.share/
: supporting files (eg, application menu entries).
Provided scripts
A number of supporting scripts are provided, to perform tasks such as window management:
rand_bg.sh
: select a background image at random.run-trayer.sh
: launchestrayer
with the desired configuration.reposition-trayer.sh
: adjust the position of thetrayer
window.pad_xmobar.sh
: add space toxmobar
for thetrayer
window to occupy.toggle-wifi.sh
: turn wifi on and off using NetworkManager.win_list.sh
: lists the windows on the current workspace.win_sel.sh
: usesdmenu
to list the windows on the current workspace and activate the selected window.
There are also several scripts for interacting with Music Player Daemon via the mpc client:
media-notifier-daemon.py
: displays media notifications.media-notifier.py
: triggers media notifications, such as identifying the currently-playing song.media-notifier-hide.sh
: hides media notifications.media-select-song.sh
: prompts the user to select a song to play from the current MPD playlist; note that this requires a custom version ofdmenu
(see note, below).
There is also a script for scraping live sports scores:
live-scores.py
: currently supports cricket scores via ESPNcricinfo and ice hockey scores via NHL.com.
Supporting tools
- autorandr: a tool that automatically selects a display configuration based on connected devices.
- dmenu: a keyboard-driven menu, used to here to select windows from the workspace.
- NOTE: the
media-select-song.sh
script requires a custom version ofdmenu
that supports the-j
command-line argument. - dunst: a lightweight notification daemon.
- 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.
- xmobar: a minimalist textual status bar.
Useful references
- The core xmonad modules.
- Third party extensions.
- The official configuration archive.
- A comprehensive configuration.
License
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. |-->