Dwm

dwm is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts. All of the layouts can be applied dynamically, optimising the environment for the application in use and the task performed.


 * dwm is only a single binary, and its source code is intended to never exceed 2000 SLOC.
 * dwm is customized through editing its source code

More details concerning dwm can be found on the dwm Homepage.

Installation
Preferably, you'll want to enable USE flag "savedconfig" and save your customized configuration file to "/etc/portage/savedconfig//x11-wm/dwm-6.0.h" for your later editing pleasure.

If you have multiple monitors, you should also enable the "xinerama" USE flag regardless of whether or not you're using Xinerama.

startx/xinitrc configuration file
The preferred method of starting dwm is by way of $HOME/.xinitrc:

Using this method, users can pipe other commands such as Conky and IMWheel

Main dwm config.h file
As stated previously, the main dwm configuration file is the "/etc/portage/savedconfig//x11-wm/dwm-6.0.h" file and after each change, dwm needs to be recompiled for any changes to take effect.

META + SHIFT + q key sequence reloads the dwm binary currently executing within memory after recompiling.

Using commandline startx/xinitrc
If using the above xinitrc, use startx after logging in.

Using a Display Manager
(Any users using a display manager for logging into a dwm desktop?)

dmenu
dmenu is a dynamic menu for X, originally designed for dwm.

Conky
For displaying additional status information on dwm's menu bar. Prefer installing with "-X" USE flag as only text information is piped through to the dwm instance. (USE flags for consideration are "-X hddtemp iostats wifi".)

Problems

 * Upgrading from dwm-5.9 to dwm-6.0 incorporated many changes making your previous config.h a likely problem for compiling dwm-6.0. Likely problems displayed might be compiler error messages "[nowiki]'nmaster' undeclared[/nowiki]".  To resolve, compile and install dwm-6.0 without using your custom config.h file and then find the default dwm-6.0 config.h file and diff against your old config.h file.  (Or, uncompress the dwm-6.0 tarball to acquire the default dwm-6.0 config.h file.)

External References

 * dwm Homepage
 * dmenu Homepage