From ArchWiki
Revision as of 05:44, 8 July 2010 by Itsbrad212 (talk | contribs)
Jump to: navigation, search


Catwm is a small, light weight window manager created by pyknite. It was first announced in this ( forum post.


Method 1

This requires git.

First, download the PKGBUILD from Then, as a non-root user, run:

$ makepkg

while in the directory of the saved PKGBUILD. All the files will be retrieved and the package will be built. Then run:

# pacman -U catwm*.pkg.xz

to install the package.

Method 2

If for some reason method one fails, try this one. Visit the official github page ( and download each file.

Before you compile catwm, you may want to skip to the Configuration section to configure it.

Then, while in the directory as the downloaded files, run the following as a non-root user:

$ make

Then, run the following as root:

# make install
# make clean


Catwm uses it's config.h file for configuration. By default, some hotkeys are already set (Note: the default MOD key is the Alt key):

  • MOD + h (decrease the size of a current window)
  • MOD + l (increase the size of a current window)
  • MOD + x (close current window)
  • MOD + j (change to next window)
  • MOD + Tab (change to next window)
  • MOD + k (change to previous window)
  • MOD + j (change to next window)
  • MOD + Enter (change master to current window)
  • MOD + Space (switch mode/maximize)
  • MOD + c (lock - requires slock)
  • MOD + p (open dmenu - requires dmenu)
  • MOD + Shift + Return (open urxvt - requires urxvt)
  • MOD + Left (previous desktop)
  • MOD + Right (next desktop)
  • MOD + 0-9 (change to desktop #)
  • MOD + q (quit catwm)

Set Volume Up/Down Hotkeys

NOTE: This requires amixer, provided by alsa-utils

You must set hotkeys in config.h to point to volup and voldown. Here is an example:

{ MOD, XK_Down, spawn, {.com = voldown}},
{ MOD, XK_Up, spawn, {.com = volup}},

That would set hotkeys that make Mod+Down lower the volume and Mod+Up raise the volume according to whatever volup and voldown are set to.

To change what percentage the volume is incremented/decremented by, edit voldown and volup. For example, to make it 2% increments/decrements, you would do:

const char* voldown[] = {"amixer","set","PCM","2\%-",NULL};
const char* volup[] = {"amixer","set","PCM","2\%+",NULL};

Set Next/Previous Song Hotkeys

NOTE: This requires mpd, and mpd software such as ncmpcpp or mpc, capable of changing songs from the command line.

You must set hotkeys in config.h to point to next and prev. Here is an example:

{ MOD|ShiftMask, XK_Right, spawn, {.com = next}},
{ MOD|ShiftMask, XK_Left, spawn, {.com = prev}},

This would set MOD+Shift+Right to go to the next song and MOD+Shift+Left to go to the previous song.