twm is a window manager for Xorg. It is a small program, being built against Xlib rather than using a widget library, and as such, it is very light on system resources. Though simple, it is highly configurable; fonts, colours, border widths, title bar buttons, etc. can all be set by the user.
twm supplanted uwm as the default window manager supplied with X11 from the X11R4 release in 1989. 
twm has stood for Tom's Window Manager, Tab Window Manager and more recently Timeless Window Manager.
twm is provided by the package.
twm with xinit.
You can also start twm with a display manager. The
twm.desktop file does not exist so we have to create it at
In the newly created
/usr/share/xsessions/twm.desktop file, copy and paste:
[Desktop Entry] Name=twm Comment=xorg-twm TryExec=twm Exec=twm Type=Application
By default, twm looks very dated and unintuitive. By creating the file
~/.twmrc, you can customize twm to make it more friendly.
gives full details of the commands which can be used in your
~/.twmrc files have been posted online. Some examples include:
- Sample .twmrc file (Physics Department Unix Login Mini-Howto, W&M University through Wayback Machine)
- sample twmrc files (Apple Open Source/X11/X11-0.46.4)
- system.twmrc (Apple Open Source/X11/X11-0.46.4)
- twm configs - 1 (custompc.plus.com)
- twm configs - 2 (custompc.plus.com)
- Window Managers for X: TWM/VTWM (xwinman.org)
A Google search for "twmrc" can also be used to find new ideas.
Tips and tricks
There is a patched version, not in the repositories, with updated features such as transparency. A description and build script is available on the xorg mailing list. It can be tried out by installing xcompmgr, running the build script, putting the resulting
dot.twmrc files in a convenient directory, and editing the
~/.xinitrc file so that the last two lines are
xcompmgr -o 0.3 -c -r 8 -t -10 -l -12 & /path-to-directory/twm -visual TrueColor -depth 32 -f /path-to-directory/dot.twmrc
You might find that titlebars and menu entries in TWM are extremely large - twice the size that one might typically expect. This is a locale issue with TWM that occurs when a
UTF-8 locale is used. Setting the locale to
C fixes the issue. See .