A comparison of four window managers
April 26, 2008
Judging from the search engine terms that show up in my WordPress dashboard, a lot of the visitors to this blog are searching for a comparison between either Fluxbox and Openbox, Openbox and Pekwm, or Pekwm and Openbox (search terms such as Pekwm vs. Openbox, or Openbox vs. Fluxbox are rather common).
To satisfy the desires of my dear readers, and to help those who want to know more about some window managers, I have therefore created the following table comparing four very popular window managers (or three very popular ones and one that I happen to like a lot :-)): Icewm, Fluxbox, Openbox and Pekwm.
Icewm, Fluxbox and Openbox have a wide user basis, and a very loyal following. Pekwm is a lesser known window manager that deserves more attention. I mainly use Openbox and Pekwm, and occasionally Icewm.
Please note that this table is not an indication of the most versatile, most developed or ‘best’ window manager. If a window manager lacks a feature, it may have some different strengths. Openbox, for example, does not support pixmap themes, but its theme options are the most complex and elaborate theme options of these four window managers (which makes creating themes for Openbox so much more fun!). Some features may also be primitively implemented: Pekwm supports dockapps, for instance, but its harbour is not very well developed. Nor does this chart provide an exhaustive list of features for these window manager. Icewm, for example, has a number of unique features that are not mentioned in this table (such as an email indicator and some system monitoring tools for the taskbar), and a lot of the basic features of window managers are left out.
I created the table so you could easily find out what each window manager can or cannot do. Choose whichever window manager you like best. Using one over the other doesn’t make you superior. 🙂
There is a reasonable possibility that this table contains some errors. If you find any, please let me know. If I can think of more categories, I’ll add those later.
Icewm | Fluxbox | Openbox | Pekwm | |
First release | 1997 | 2001? | 2002 | 200? |
Last stable release | 1.2.34 (27-12-2007) |
1.0.0 (08-10-2007) |
3.4.7 (17-04-2008 ) |
0.1.6 (28-05-2007) |
Language | C++ | C++ | C | C++ |
Based on | — | Blackbox | originally Blackbox | originally aewm++ |
EWMH standards | partial | partial | yes | partial |
Panel | yes | yes | no | no |
Support for dockapps | no | yes (slit) | yes (dock) | yes (harbour) |
Native wallpaper support | yes | yes | no | no |
Alt-tab dialog | yes (vertically and horizontally!) | no | yes | yes |
Command dialog | yes (in taskbar) | yes (fbrun) | no | yes |
Xinerama support | yes | yes | yes | yes |
Native (fake) transparency | no | yes | no | no |
Pixmap themes | yes | yes | no | yes |
Multiple workspaces | yes | yes | yes | yes |
Viewports | no | no | no | yes |
Add/remove workspaces | no | no | yes | no |
Usable screen edges | no | no | no (in git version) | yes |
Strut support | no | no | yes | no |
Right-click desktop menu | yes | yes | yes | yes |
Configurable client menus | no | no | no | yes |
Keyboard shortcuts in menus | yes | yes | yes | no |
Dynamic menus | no | yes | yes (pipe-menus) | yes |
Additional custom menus | no | yes | yes | yes |
Icons in menus | yes | yes | only in client-list-menus | no (only in client-list-menu of git version) |
Grouping/Tabbing of windows | no | yes | no | yes |
Opaque moving/resizing | yes | yes | only resizing | yes |
Minimize window to tray | yes | no | no | no |
Hide windows | yes | no | no | no |
Tiling | yes (vertically and horizontally) | no | no (GrowTo… actions) | no (‘MaxFill’ actions) |
Per-app settings | yes | only grouping | yes | yes |
Configurable key bindings | yes | yes | yes | yes |
Chainable keygrabber | no | yes | yes | yes |
Configurable mouse behaviour | Some in the preferences file | yes (in keys file) | yes | yes |
Session management/ Autostarting applications |
yes | yes | yes | yes |
Confirm logout | yes | no | yes (3.4.7) | no |
Shutdown/reboot control | no | no | yes (3.4.7) | no |
Graphical configuration tools | plenty | Fluxconf, Fluxmenu | Obconf, Obmenu | no |