Skip to content
Switch branches/tags
Go to file
This branch is 80 commits ahead of sr:master.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

dwm - dynamic window manager

dwm is an extremely fast, small, and dynamic window manager for X.

What's in this fork?

This is what you get (Transparent bar, No need for OpenGL): Screenshot

My fork (aario) contains these features:

  • based on version 6.1(20151109)
  • Blur Effect A fast and nice blur effect. Does not need OpenGL and is all CPU based.
  • Bar is hybrid. On mouse hover more details will be diplayed.
  • Status text can be delimited with '$' character. In that case the second part is displayed when hover.
  • Works only with my fork of dmenu
  • Systray patch applied
  • Status colors patch applied
  • Per-window keyboard layout patch applied
  • Standard media keys supported (Volume Up/Down, Play/Pause, etc.)
  • All shortcuts are now based on Win key (instead of Alt or Shift+Alt)
  • Added multi columns layout (dwm-columns patch)
  • Mod+L keys launch slock
  • Mod+W keys launch dmenu_win (You have to install it from along with wmctrl)
  • Mod+M keys launch dmenu_media (Media player controller menu)
  • Mod+C keys launch dmenu_custom which displays of a list of custom scripts located in $HOME/.dwm/custom_scripts
  • Mod+V keys launch dmenu_vol which adjusts PCM output using alsamixer
  • Mod+B keys launch dmenu_bl which adjusts LCD brightness using xbrightness
  • Mod+X keys toggles bar
  • Mod+H keys launch dmenu_home which browses through home folder and opens files
  • Mod+Esc keys launch dmenu_apps which browses through applications menu and launches apps
  • Mod+R keys restarts the window manager
  • Meta key launches dmenu_all
  • Autostart all commands in ~/.dwm/ and ~/.dwm/
  • You can also close windows by Alt+F4
  • F1, F2, ... function keys switch between different layours (tiling, floating, etc)


In order to build dwm you need the Xlib header files.


Edit to match your local setup (dwm is installed into the /usr/local namespace by default).

Afterwards enter the following command to build and install dwm (if necessary as root):

make clean install

If you are going to use the default bluegray color scheme it is highly recommended to also install the bluegray files shipped in the dextra package.

Running dwm

Add the following line to your .xinitrc to start dwm using startx:

exec dwm

In order to connect dwm to a specific display, make sure that the DISPLAY environment variable is set correctly, e.g.: exec dwm

(This will start dwm on display :1 of the host

In order to display status info in the bar, you can do something like this in your .xinitrc:

while xsetroot -name "`date` `uptime | sed 's/.*,//'`"
	sleep 1
done &
exec dwm


The configuration of dwm is done by creating a custom config.h and (re)compiling the source code.


Mario Klingemann

Link to the original work:

The original source code of stack-blur: