Installing the Fluxbox Windowmanager


Contents
1.1 Download Fluxbox
1.2 Install Fluxbox
1.3 Setup Fluxbox
1.4 Start Fluxbox
1.5 Customize Fluxbox
1.6 More Help

Minimal assumptions:
You are willing to type on the command line (or terminal).
You have XFree86 (X windows) installed and working on Linux or Unix.


1.1 Download Fluxbox


First step is downloading Fluxbox from
fluxbox.org. There are quite a few package types you will find. This HOWTO will be using the tar.gz download which can be used by any Linux or Unix. The development version used here is fluxbox-0.9.6pre1.

If you prefer to try a package specifically for your distribution, after it is installed, skip to the Setup Fluxbox section.

1.2 Install Fluxbox


After downloading fluxbox-0.9.6pre1.tar.gz, standard installation commands are used:
If you want to enable any other optional compile arguments, see the README file in the root of the fluxbox directory.

1.3 Setup Fluxbox


Using Fluxbox after you boot up can happen in 2 ways, depending on if you boot into a graphical interface, or the command line interface. The command line way of starting of X and Fluxbox is the same across all Unix and Linux, so that is what I will cover.

If you boot into the command line login
From the command line interface, when you type 'startx' to start X, the file .xinitrc in your home directory is checked to see if you have specified your preferred window manager.
This leaves only the word " fluxbox " on the first line of the file, and fluxbox will be started as the window manager for X when you type 'startx'.

If you boot into a graphical login
Depending on which display manager you use, the steps are different. X display managers use the file ~/.xsession when they check for the preferred window manager.
Here are some links
http://fluxbox.org/docs/en/faq.php#gdm http://fluxbox.org/docs/en/faq.php#kdm

1.4 Start Fluxbox


If you are currently in the graphical interface, log out (of KDE/GNOME/WindowMaker/Afterstep/etc). Then use [CTRL][ALT][F2] to switch to another text console. Log in as root (or as a regular user, then su to root), and type " telinit 3 ". This changes from runlevel 5 (graphical mode) to runlevel 3 (text mode). Now X is not running, and you are on the console in text mode.

If you want to permanently boot into text mode, as root, open the file /etc/inittab and look for the line " id:5:initdefault: " and change it to " id:3:initdefault: " and save. Next time the computer boots up, it will stay in text mode. To switch the computer to boot back into graphical mode, change that :3: back to a :5:. To change the runlevel on the fly, as root type " telinit 3 " (for text) or "telinit 5 " for graphical mode.

Start Fluxbox from the command line by simply typing " startx ". If you have Fluxbox installed correctly, X will start, and Fluxbox will come up as your window manager. It may look simplistic, but that is only until you tweak it out to suit your preferences :) Access the Menu by right clicking on the desktop.

If you chose to use a graphical login, either select "Fluxbox" in the dropdown menu, or "default" to have it read from your .xsession file to find your preferred window manager.

1.5 Customize Fluxbox


Now here is the fun part where you customize your desktop to suite your preferences.

1.5.1 Setting Styles and Backgrounds

Selecting a Style (theme) is done by right-clicking the desktop. Menu -> Fluxbox -> Styles
and also under Menu -> Fluxbox -> User Styles
System styles are kept in /usr/local/share/fluxbox/styles as default. The path must be readable by non-root users to be accessed, or copy them to ~/.fluxbox/styles.

To change the background, a few commands are available. I use fbsetbg. The syntax is:
fbsetbg [ -fFcCtTaA /path/to/wallpaper ] [-l] [-h] [-d] [-p]
-f Set fullscreen wallpaper
-c Set centered wallpaper
-t Set tiles wallpaper
-a Set maximized wallpaper, preserving aspect.
-l Set previous wallpaper
-d debug
-p Tips
It makes a file ~/.fluxbox/lastwallpaper for use with the -l option.

1.5.2 Editing the Menu

The Menu can be customized in the file ~/.fluxbox/menu. The syntax is simple, and you can get the idea by looking in the file. I end up putting a few of my most often used apps on the top of the list, and rearranging the menu to my liking.

1.5.3 Using the Slit

The Slit is where dockable applications go. I like to load up a few favorite dock apps. I use:
More dock applications can be found at the
Dock App Warehouse, and this dock apps page, and Freshmeat, and also this new dock apps site, Dockapps.org.

1.5.4 Defining Hot Keys

The file for setting hot keys is ~/.fluxbox/keys. Simple format.
Mod1: is "alt"
Mod4: is "apple key" or "windows key"
Control: "ctrl" key ofcourse

1.5.5 Editing ~/.fluxbox/init

This file contains a lot of settings, most of which can be changed within the Menu -> Fluxbox -> Configuration menu. It has some more stuff too, like time format, paths, double click interval, etc. Dig in if you want to see more of what is under the hood of Fluxbox.

1.5.6 Customizing Styles

Creating your own styles is a lot of fun. Starting out, I would recommend taking a style you already like, copy it to another file name, then work on the copied version. Change what you don't like and you will end up with a sweet theme that you personalized. The syntax of the style file is again not too difficult. Look at what is already there, change a little and watch the differences. There is good documentation in the Fluxbox DocBook.

Here are a few of the Styles I have made.

1.5.7 Cool stuff to do with Fluxbox

Running a screensaver as wallpaper
I wrote a HOWTO about this which you can find here. Here is the quick version:
Install the xscreensaver package. Then you can execute the screensavers individually and run them as a wallpaper. Execute xscreensaver-demo to preview the screensavers in the package. I use the screensaver called "Strange" on my desktop. To set it as wallpaper, I execute " /path/to/strange -root -delay 20000 -ncolors 255 ". To find out what to type to execute the screensaver, I preview a screensaver I like in 'xscreensaver-demo', then click the "Settings" button, then "Advanced" to see exactly what is executed. If the screensaver has a man page, I read it too. (GLmatrix is wicked as a wallpaper) :)
Transparent terminals see through xscreensaver to wallpaper
I also use Eterm (or other terminals with transparency) for a lot of work. I set a cool background for my style, and with xscreensaver's "Strange" running on top of it, the background is hidden. With Eterm's transparency turned on, I can see my background image behind "Strange", which is a neat effect as I move the terminal around on the desktop, different parts of the background image show.
Chbg
Chbg is a cool little program (like others) that changes the desktop background image on an interval. It has a great number of settings and effects able to be configured. I like to setup chbg with a folder of cool background images, then let it cycle through them slowly.
Root window programs
There are some interesting programs that run on the root window of your display. A few are, xfireworks, xpenguins, xhangglider, Oneko, xfishtank and more.

1.6 More Help


If you find yourself needing more help, here is a list of resources: