Linux Goodies

In Pursuit Of The Perfect O/S



The Lightweight Linux Fluxbox Windows Manager

Amazon Computers

The Amazing Lightweight Fluxbox Window Manager

One of the most popular light weight window managers out there for Linux is Fluxbox. It loads quickly, gives great window management support, and is very tunable. It has a task bar that will show what's running, and provides quick switching to anything that is running. The task bar also has a number of tunable factors.

Since I use Debian Linux, I installed Fluxbox with the apt-get utility as follows:

apt-get install fluxbox

Fluxbox supports multiple work spaces, as many as you wish. You can navigate to them by using arrows on the task bar, rolling the mouse wheel from anywhere on the root window, or with user-defined shortcut keys.

In your user's home directory, the fluxbox install may create a .fluxbox directory. In there are files you can edit in order to tailor fluxbox to your needs. If that directory doesn't exist, then make it and copy the fluxbox init, keys, and startup files from their install directory to your local .fluxbox directory. You may find the installed ones in /usr/local/share/fluxbox, or in Debian Linux in /etc/X11/fluxbox.

In fact, by editing the .fluxbox/keys file you can define keys to not only control many aspects of window control and navigation, you can define action keys to launch tasks. The following snippet from my keys file give an example of defining keys to go directly to work spaces, and launch an xterm:

Mod1 1 :Workspace 1
Mod1 2 :Workspace 2
Mod1 3 :Workspace 3
Mod1 4 :Workspace 4
Mod1 5 :Workspace 5
Mod1 6 :Workspace 6
Mod1 x :exec xterm -sb

In the key definitions, the Mod1 stands for the Alt key. Thus, Alt x launches an xterm, and Alt 2 takes me to work space 2. Note that there is a space between the Mod1, the key, and the :Workspace. Without the space the key maps will fail.

Fluxbox doesn't have any direct support for clickable icons, but there are a couple of options to add that capability with other efficient products. The least expensive in resource of these launchers run in what Fluxbox calls the slit.

So what is the slit? It took me awhile to figure it out. I was used to window managers like fvwm, which have some kind of button bar. With these, you can define buttons, their icons, and what to do when clicked. That's what I expected with the slit.


The slit isn't a launcher, it holds actual running tasks. The specially designed tasks display in a button sized output, and all run in the slit. You can set many options that control the slit, such as whether to display the slit task displays in a horizontal arrangement or a vertical one. Where on the screen to have the slit. And whether to have the slit always on top, or be allowed to be covered up by other tasks. You can even have the slit automatically withdraw to nothing more than, well, a slit --a thin but visible line. When the mouse is over the withdrawn slit, the running slit applications will become visible.

Some other window managers call such tasks Dockapps, for dockable applications. Such dockapps designed for other window managers will work fine in the Fluxbox slit. Some available ones are those written for Blackbox as part of the bbtools package. Another group of dockapps that work nicely with Fluxbox are the WindowMaker Dockapps.

If you simply runs any of these dockapps (usually followed with the & symbol to let it run in the background), the application will automatically be picked up by the slit. By adding the reference (with &) to the Fluxbox startup file the dockapps come up automatically. The startup file is usually in your home .fluxbox directory

Fluxbox Is Easily Configured

Fluxbox is not only quite configurable, but it offers many of the configuration options via an easy to use menu system.

A right click anywhere in the root window will bring up the menus. One of the selections is Configuration. Once clicked, the Configuration menu will pop up revealing more options.

Among those is Slit. Here you see this hierarchy of menus shown. You can see all the possible configuration selections. Within the slit menu you can see all the options just for the slit.

Fluxbox Configuration Menu

If you need even more tuning, you can edit the .fluxbox/init file to have access to all the tunable parameters.

A Screen Shot: Fluxbox With Idesk

Fluxbox Screen Shot

Above is a screen shot of my Fluxbox configuration. You can click on the image for a full sized image. Background files, such as the one shown, can be loaded with the Fluxbox utility fbsetbg.

You'll notice a lot of icons on the right side of the screen. Fluxbox doesn't provide directly for such icons, it only has a menu system that comes up with a right-mouse click in the root window.

To get the icons in this screen shot I used a utility called idesk. Idesk lets you define icons for the screen, and will work not only on Fluxbox but any window manager you like to use.

Idesk icons can be moved to any place on the screen with a left-mouse click and drag. The idesk utility will remember where the icons are so on next entry into the window manager the icons will re-appear wherever you moved them. A double click on an icon will launch the associated task. Idesk is fairly light on resource requirements itself, using roughly what most of the light window managers use.

Tabbing Windows On Fluxbox

In the previous section you might notice that 3 windows were open on the displayed workspace. A very neat feature of Fluxbox is the ability to combine multiple windows into a single window with tabs. Each of the tabs brings up one of the merged windows in the same window space. Simply doing a middle-mouse click and drag on a window title bar to the host window title bar will make the dragged window a tab in the host window.

In the example below, you can see that I've combined the 3 windows of the screen shot image into a single window that has 3 tabs. I've labeled the tabs so you can see what I mean.

Fluxbox Tabbed Window

Clicking on a tab will replace the display in the window with that of the tabbed application. Is that neat or what? You can restore a tab to an individual window by middle-clicking on the tab in the title bar and dragging to a new screen location.

The Fluxbox Slit

Fluxbox Screen Shot With Slit

Above you see a screen shot of another setup variation of Fluxbox. On this example, there are no idesk icons, but there are some button-sized displays on the upper-right side of the screen. These are Window Maker dockapps residing in the Fluxbox slit.

Many handy dockapps are available including system monitoring applications, clock applications, handy utility applications, and application launching applications. In fact, within the Window Maker dockapp collection are a couple of very handy task launchers that can reside in the slit. These offer clickable icons in a very compact and resource frugal design.

Fluxbox Slit Applications

This image is a normal-sized display of the slit applications of the previous screen shot. The top one is clearly a clock provide by the wmtime dockapp. It can alternately display a digital clock.

The middle dockapp is the most interesting. It's a Window Maker dockapp named wmbutton. Through use of a setup file named .wmbutton, it allows you to define actions to be taken if you click on any of the 9 miniature buttons within the display.

The bottom one shows the current phase of the moon. It's provided by the Window Maker wmmoonclock dockapp. Clicking on the moon image with the left-mouse button will allow you to step through more displays, each showing additional information about the moon.

The wmbutton dockapp is more powerful than first appears. Each miniature button may be programmed to launch up to 3 different applications, depending upon which mouse button is clicked. This little dockapp is the smallest method I've found in both size and resource requirement for adding clickable buttons for launching applications.

Another Fluxbox Variation With Wmdrawer

Fluxbox With Wmdrawer Screen Shot

Above you see another option for adding clickable icons to Fluxbox, again with little added resource requirement. Notice the different look of the slit at the upper-right portion of the screen.

Fluxbox Slit With Wmdrawer

Here's the slit display in full size. Again you may notice the wmtime clock display. Below that is a penguin that is the display of a Window Maker dockapp called wmdrawer.

When you click on the penguin, the drawer opens to display as many icons as you've defined. Clicking on one will launch its associated application. Hovering over one will display a user-defined reminder of what the application is.

You define the buttons and associated applications in a file named .wmdrawerrc in your home directory. It uses only slightly more resource than the wmbutton utility, and much less than idesk.

Once an application icon is clicked, the drawer withdraws, leaving only the penguin image.


Hopefully this review and tutorial has given you some idea of the look and feel of Fluxbox. It is small, fast, configurable, and reliable. While I normally use Fvwm, Fluxbox is a top contender for my attention. On my resuscitated Old Laptop, I use Fluxbox and Ratpoison as my two window managers.

My old laptop has a built-in mouse that has given up the ghost. I use an external thumb-mouse to replace it, but avoid the mouse whenever I can. This is quite possible with Fluxbox because of the extensive capability of defining shortcut keys in the .fluxbox/keys file.

If you have any resource limitations, or are like me and just don't feel comfortable wasting resources on a computer interface, then I recommend that you give Fluxbox a look.