Translation(s): English - Français - Italiano - Русский
Some information on the Fluxbox window manager.
Contents
Introduction
In Unix computing, Fluxbox is a fast and light WindowManager for the X Window System based on Blackbox 0.61.1. and compatible with it. It has support for KDE and Gnome applications.
Unlike the heavy weights, Gnome and KDE, which take (ideally) 15-30 seconds to get up and running, Fluxbox is up and running as soon as you hit the enter key. Its menu and configuration is done by simple files located in the user's directory under the name .fluxbox.
Fluxbox has a slick tabbing mechanism for windows. You can combine multiple windows into one window with tabs across the top by simply middle-clicking the tab of one window (and holding it down) and dragging and dropping on the tab of another window. This is very nice for cleaning up a desktop without exiling applications to other virtual desktops (it has those too).
Another nice feature is Fluxbox's support for docking applications. Basically, a docking app runs as sort of an icon with minature display or controls. But not like an icon, more like small controls on a walkman (for example) as opposed to a big dial face of a home stereo. It aims to be lightweight and highly customizable, with only minimal support for graphical icons, and only basic interface style capabilities. The basic interface has only a TaskBar and a menu accessible by right-clicking on the desktop. Fluxbox also supports user created keyboard shortcuts.
Fluxbox is an amazing piece of software that does not depend on any other WindowManager. It is small, fast and almost a sure thing for pleasing the eye. (Source < 500K). It can be used with DebianLive on small USB keys.
In accordance with Fluxbox's goal of simplicity, the main menu, the keyboard shortcuts and the basic configuration are all changed by editing text files. Fluxbox's themes are 100% compatible with those of blackbox. Colors, gradients, borders, and several other basic appearance attributes can be specified; recent versions of Fluxbox support rounded corners and graphical elements. Fluxbox also has several features which blackbox lacks, including TabbedWindow s, a feature familiar from PWM, and configurable titlebar.
Installation
If you do not have X installed, you need to install X first, using Aptitude or apt-get:
apt-get install xorg
After you can install fluxbox.
apt-get install fluxbox
You can use fluxbox with xdm now.
The fluxbox package contains the following tools:
- fluxbox: the Fluxbox window manager
- fbsetbg: script to setup the rootwindow's background
fbrun: small RunApplication tool
- startfluxbox: Fluxbox starter that reads session information from ~/.fluxbox/startup
Fluxbox Session
KDM and GDM
To start a Fluxbox session from ?KDM or GDM you can choose 'fluxbox' from the session or session-type menu.
XDM
To run Fluxbox from xdm you should setup a .xsession file in your home_directory.
exec startfluxbox
Alternatively use the debian alternatives and setup x-session-manager to be Fluxbox.
From Commandline
To run Fluxbox from the commandline login, setup the ?.xinitrc file in your Home directory and insert the following line:
exec startfluxbox
Alternatively use the Debian alternatives and setup x-window-manager to be Fluxbox.
Configuration
Changing GTK themes
You can change GTK and GTK2 themes with gtk-theme-switch in fluxbox. Install gtk-theme-switch package first and move your GTK themes to ~/.themes, run gtk-theme-switch2 and change theme.
This shows you how to edit GTK settings without any extra application installed.
Create or edit the ~/.gtkrc-2.0 file. In that file input parameters such as the following:
#sets the font gtk-font-name = "sans 7" #sets the theme gtk-theme-name = "niroki" #sets the icon theme gtk-icon-theme-name = "SimplyGrey" #shows only icons in the toolbar gtk-toolbar-style = GTK_TOOLBAR_ICONS #shows small icons in the toolbar gtk-toolbar-icon-size = GTK_ICON_SIZE_SMALL_TOOLBAR
Resources: http://www.gtk.org/api/2.6/gtk/GtkSettings.html
Keyboard Shortcuts
It is possible to set up a wide range of keyboard shortcuts for Fluxbox using the ~/.fluxbox/keys configuration (although it is possible to use another name and specify it in ~/.fluxbox/init). The key file has a rather simple and clean layout, as shown in the following example:
# fluxbox keys file Mod1 Tab :NextWindow Mod1 Shift Tab :PrevWindow Mod1 F1 :Workspace 1 Mod1 F2 :Workspace 2 Mod1 F3 :Workspace 3 Mod1 F4 :Workspace 4 Mod1 a :Maximize Mod1 h :MaximizeHorizontal Mod1 v :MaximizeVertical Mod1 q :ExecCommand aterm Mod1 d :ToggleDecor
So the general layout is:
<modifier> <key> [...] :<operation>
NOTE: The following tables are not complete!
modifier |
key on the keyboard |
Mod1 |
Alt |
Mod4 |
OS, a.k.a. Win-key |
Control |
control key |
Shift |
shift key |
keys |
key on the keyboard |
a-zA-Z0-9 |
letters and digits, case insensitive |
Escape |
the escape key |
Right|Left|Up|Down |
Arrow-keys beyond the Home/End keys |
Tab |
tabulator key |
Delete |
delete key |
operations |
action |
Workspace N |
switch to workspace N |
PrevWindow|NextWindow |
cycle to prev/next window on current workspace |
Exec|ExecCommand |
execute the following arguments |
FullScreen |
toggle fullscreen for the current window |
ToggleDecor |
toggle window decorations |
Maximize[Horizontal|Vertical] |
toggle maximize for current window |
NextTab|PrevTab |
switch between tabs |
MoveTo x y |
move the current window to coordinates (x,y) (where (0,0) is the upper left corner) |
ArrangeWindows |
automatically arrange windows on current desktop |
RootMenu |
popup the rootmenu on the cursor's position |
Modifier, keys and operations are not case sensitive. It's a matter of readability in this case.
Background
To load a background on startup, you have to put (or remove the comment if there is already)
background: none
in ~/.fluxbox/overlay
Then set the background one time manually with fbsetbg. This last used wallpaper will be saved to the file ~/.fluxbox/lastwallpaper.
Slit
The slit is a special window frame that can contain dockable applicatioins, e.g. 'bbtools' or 'wmapps'.
When applications are run in the slit they have no window borders of their own; instead they are framed in the slit, and they are always visible in the current workspace.
You can click button 3 on the edge of the slit window to get a menu to determine its position, whether its contained applications should be grouped horizontally or vertically and whether the slit should hide itself when the mouse moves away.
Most dockable applications use the -w option to run in the slit. For example, you could put in your ~/.?xinitrc:
bbmail -w & bbpager -w & wmdrawer & exec fluxbox
NOTE: You can also put all of these in the startfluxbox(8) script. This way you would only need to specify: exec startfluxbox in your ~/.xinitrc.
To use the slit you must have it compiled into Fluxbox, this is the default action.
Slitlist File
Fluxbox's slitlist file is available for those that use dockapps in the slit. This file helps Fluxbox keep track of the order of the dockapps that you want started. The file is generally located in ~/.fluxbox/slitlist
A simple procedure for getting the slit sequences the way you like it is:
- Run Fluxbox with no pre-loaded dockapps
- Run dockapps individually in the order you want them
- Add dockapps to your auto-run script, or better yet your startfluxbox(8) script.
This sequence will be saved by default to ~/.fluxbox/slitlist and will be maintained in future versions of Fluxbox.
Users are free to manually edit the slitlist file. It is a simple list of window names, one per dockapp. Similar to the init file it should not be edited while Fluxbox is running. Otherwise changes may get overwritten.
The user also has the option of choosing a different path for the slit list file. The following is the init file component that needs to be changed:
session.session0.slitlistFile: <filename>
Further Information
See also ?xinitrc, ?FluxboxMenu, FluxboxIcon.
External links
Fluxbox themes