← Software

xmonad

A tiling window manager configured in Haskell.

xmonad logo

xmonad is a small, hacker-friendly tiling window manager written in Haskell. The user's xmonad.hs configuration file is also Haskell code that is compiled into the running window manager on each invocation, which means configuration is fully type- checked and can use the entire Haskell ecosystem (lazy evaluation, type classes, monads) for layout logic.

Layouts, keybindings, and behaviour can be composed from a large library of contrib modules. Want a tabbed layout, a multi-column variant of master-and-stack, automatic floating for specific applications, gaps between windows, or a status bar that updates in response to workspace changes? It's a contrib import and a few lines of Haskell code.

Spencer Janssen, Don Stewart, and Jason Creighton started xmonad in 2007. The project's core is famously small — under a thousand lines of Haskell — which has helped it remain remarkably stable across years. Users who enjoy Haskell tend to love xmonad; users who do not typically prefer i3, Sway, or bspwm.

License: BSD-3-Clause

Category: Desktop

Website: https://xmonad.org/

Install

Debian/Ubuntu: sudo apt install xmonad
Fedora/RHEL:   sudo dnf install xmonad
Arch:          sudo pacman -S xmonad

Authors

  • Spencer Janssen, Don Stewart, Jason Creighton (creators)
PreviousXFS NextXorg / X.Org Server

This site is currently in Beta. Contact: Chris Paton

Textbook of AI · Textbook of Usability · Textbook of Digital Health

Auckland Maths and Science Tutoring