Ultra-minimal Linux Desktops Roundup
Minimalism at its best: fvwm and Awesome
To finish off my window managers series, here's a quick roundup of some seriously ultra-minimal window managers.
LXDE, the New Lightweight Linux Desktop
Window Maker Desktop: Lightweight Linux Minimalism
Xfce Desktop: Less Lard, Less Bling, More Usability
Of the three, fvwm looks most like a 'normal' window manager. It's pretty basic, though. When you start it up for the first tine, there's no desktop decoration at all. No menu bar, no docking bay; the only thing you can do is to click on the desktop, which fires up a basic menu.
However, one of the options on the menu allows you to create your own configuration file. The form (which isn't wildly user-friendly) allows you to set up modules which will provide some desktop furniture (a pager and icon manager, for example). Graphically, though, the modules are pretty horrible – I'd rather just stick with no desktop furniture at all and just use the menu.
You can edit the ~/.fvwm/.fvwm2rc file to make changes to the look-and-feel. More usefully, you can also use this file to set up your own root (and other) menus, which means you can customise the desktop-click menu to fit your own usage. Manual config editing like this is great if you want maximum control over your desktop experience.
Overall, however, fvwm struck me as being too simple (and graphically ugly) to compete with other lightweight window managers, but not quite simple enough to compete with Awesome and ratpoison.
Next up, Awesome, a tiling window manager which offers you the absolute basics, all run from the keyboard. Up top there's a thin status bar, which shows a list of tags: you can tag windows to determine which desktop they show up in. The tags are set up as the numbers one to nine, but you can change them by editing the list of tag names in ~/.awesomerc.
By default, most of the commands use the Windows superkey ('Mod4'), but you can edit this in ~/.awesomerc. (Hit Ctrl+Mod4+r to restart Awesome for your settings to take effect, or Shift+Mod4+q to quit.)
Tag windows with Mod4+Shift+1 (for tag 1, 2 for tag 2, etc), and shift between tags with Mod4+left arrow and Mod4+right arrow. You can also try out Mod4+Return to produce a new terminal window (or right-click on an empty tag screen if you prefer the mouse); or Mod4+F2 to give you a dialog in the status bar asking you which machine you want to open an ssh session to (I loved this!).
Every time you open a new window on a particular tag screen, it tiles neatly to fit with the others (as shown in the screenshot), which is great. You can set the way in which the tiling happens, as well, with the little status bar button to the right of the tag list.
I was seriously impressed with Awesome: no clutter, no hassle, just a basic, minimalist system that works.