Configuring Fvwm's Wharf
In this series we are discussing the Fvwm window manager for the Linux operating system. This little gem isn't a full-blown desktop the likes of GNOME, KDE, or Xfce4, but you will be surprised how well this ICCM-Compliant window manager will work for you. It's lightweight, powerful, flexible, and has some nifty, old-school Linux goodness.
One such bit of nifty, old-school Linux goodness is the Wharf. This tool was actually ported over from one of my old-school favorites AfterStep. What this tool does is house a application launchers, modules, action buttons, and the Linux pager. In this article we'll examine how to invoke, use, and configure this handy module.
Installation
Fortunately, the Wharf will install along with the Fvwm installation. So there isn't any need to bother with installation. You also do not start the Wharf from the command line. Instead you have to do that from within the Fvwm menu. Let's take a look and see how.
Starting the Wharf
Sine the Wharf is a module within Fvwm, you have to start if from the Fvwm module menu. To do this left-click on the desktop to bring up the desktop root menu and click Fvwm Modules > Wharf. This action will place the Wharf on the bottom left of your desktop (see Figure 1). Â What you see in figure one is a somewhat default Fvwm Wharf. I have actually re-configured the File Manager button to illustrated that the Wharf can, in fact use icons for launchers. In fact, in this instance, I have configured it to use Thunar. I can label that "Thunar" should I choose (more on that in a moment).
The larger buttons on the Wharf are used for launching applications, whereas the square of smaller buttons is used to invoke various actions on windows. These actions include:
* Move
* Resize
* Minimize
* Maximize
* Shade
* Stick
* Kill
* Info
The next row down are the xload and xclock modules. Finally, below that, is the Linux pager. Now let's take a look at customization.
Configuration
The configuration of the Wharf is handled by the ~/.fvwm/modules file. The first section to check is the BarButtons section. This is where you configure your launchers. A sample BarButton line will look like:
*BarButtons (1x2, Title editor, Icon lemacs.xpm, Action 'Exec exec nedit')
Now, let's make that a bit more useful for our installation (or at least my installation). My editor of choice is Nano which is a text-based editor. Let's say I want to open the simple xterm window automatically with the Nano editor open. Plus I want to use an icon in the Wharf instead of just text. That new entry would look like:
*BarButtons (1x2 Title Nano, Icon /usr/share/pixmaps/mousepad.png, Action 'Exec exec xterm nano')
If you save that configuration file (after making the changes) and then restart Fvwm you will see the new launcher in the Wharf appear.
ButtonBar
I doubt you will want to try to change any of the buttons on the ButtonBar. What you might want to do is change the icon used for each button. By default the images aren't there. In fact, if you do a search for any of the images you will come up blank. To use an image you will need to find fairly small icons. When you locate icons that will work you can configure them in the same file you used to configure the launchers (~/.fvwm/modules). Locate the section containing the list of *BarButtons and you will be right where you need to be. You can re-configure the icons and even re-arrange their order should you like. There is only a pre-determined set of actions that can be used for the ButtonBar. But if you're really looking to have more launchers on your Wharf you could change out the Action for Exec and use the ButtonBar to launch more applications (or tools).
Final thoughts
If you are using the Fvwm window manager you owe it to yourself to get to know the Wharf. This is a tool that will make your Fvwm life much richer and much more efficient. Although the configuration of the tool is done via manually editing a configuration file, the time you spend will be time well spent.
Advertisement
FvwmWharf has been removed from FVWM in the latest release 2.6.7
Time to migrate its configuration to FvwmButtons..