FLUXBOX(1) | Fluxbox Manual | FLUXBOX(1) |
NAME¶
fluxbox - A lightweight window manager for the X Windowing System
SYNOPSIS¶
fluxbox [-rc rcfile] [-log logfile] [-display display] [-screen all|scr,scr...] [-verbose] [-sync]
fluxbox [-v | -version] | [-h | -help] | [-i | -info] | [-list-commands]
DESCRIPTION¶
fluxbox(1) is a window manager. As such it provides configurable window decorations, a root menu to launch applications and a toolbar that shows the current workspace name, a set of application names and the current time. There is also a workspace menu to add or remove workspaces.
Fluxbox can iconify (or minimize) windows to the toolbar One click and they reappear. A double-click on the titlebar of the window will shade it; i.e. the window will disappear, and only the titlebar will remain visible.
There are also two areas commonly used by small applets: the ‘slit’ can be used to dock small applications; e.g. most of the “bbtools” and “Window Maker dockapps” can use the slit, and the ‘systray’ which lives in the toolbar supports standard system tray icons provided by some applications.
Fluxbox uses its own graphics class to render its images on the fly. By using style files, you can determine in great detail how your desktop looks. fluxbox styles are compatible with those of Blackbox 0.65 or earlier versions, so users migrating can still use their current favourite themes.
Most of the default keyboard and mouse button actions mentioned in this manual can be changed and configured in the ‘keys’ file. This powerful configuration file can also be used to automate almost any action you may want to perform, from launching applications to moving windows around the screen. See fluxbox-keys(5) for details.
Fluxbox can also remember certain attributes of individual application windows and restore these settings the next time the window opens. See the fluxbox-apps(5) for details.
Fluxbox supports the majority of the Extended Window Manager Hints (EWMH) specification, as well as numerous other Window Hinting standards. This allows all compliant window managers to provide a common interface to standard features used by applications and desktop utilities.
OPTIONS¶
-display display
-h, -help
-i, -info
-log logfile
-rc rcfile
-v, -version
-screen all|scr,scr...
-verbose
-sync
-list-commands
STARTING FLUXBOX¶
fluxbox(1) comes with a program called startfluxbox(1) usually located wherever you installed fluxbox. This script provides you with many options and variables that can be set when starting fluxbox. To actually call fluxbox and begin using it, you should place “exec startfluxbox” in your ~/.xinitrc as the last executed command. This is assuming that the location of fluxbox(1) and startfluxbox(1) are in your shell’s $PATH. Also note that you may need to create the ~/.xinitrc file or your setup may use ~/.xsession instead, depending on your X setup. Some X login managers like gdm(1) or kdm(1) may simply provide a “Fluxbox” session for you without having to alter any settings.
By using fluxbox -i you’ll see the defaults used by fluxbox(1). These are what fluxbox looks for upon startup. In the list of “Defaults:” you’ll see a menu file location, this is where you can provide a system-wide menu file for your users.
On exit or restart, fluxbox will save user defaults in the file ~/.fluxbox/init. Resources in this file can also be edited by hand, see the RESOURCES section for more details. fluxbox(1) also has many tools to edit these; look through the main menu once fluxbox has started to find different ways of managing your session.
USING FLUXBOX¶
When using fluxbox for the first time, users who are more accustomed to full desktop environments such as KDE or Gnome may be a little surprised by the minimal screen content. fluxbox is designed to be fast and powerful, so it may take a bit of getting used to — however, the rewards are worthwhile.
In this section, we’ll give a quick summary of the common things. However, we recommend that you consult the referenced sections of this manual to further develop your understanding of what you can do with fluxbox.
Root Window (Main)¶
Looking at the fluxbox desktop immediately after startup you’ll generally see only one thing: the toolbar. If you right-click (mouse button 3) somewhere on the desktop, you can access the Root Menu. A middle-click (mouse button 2) on the desktop shows you the Workspace Menu.
Root Menu and Workspace Menu¶
From the RootMenu you can launch applications and configure fluxbox. The WorkspaceMenu shows all windows and on which workspaces they are. See section MENUS on how to customize these menus.
Toolbar¶
The toolbar contains any combination of the following tools, by default in this order:
The contents and behavior of the toolbar can be configured, see the TOOLBAR section for details.
Slit¶
Initially you won’t be able to see the slit. It is there, but it isn’t being used yet, which confuses some people initially. Think of it as a dock where you can place smaller programs. If you’ve looked at any screenshots on the official fluxbox web site, you will have noticed some small programs on the edge of some of the screens. These were more than likely docked programs in the slit. To learn more about the slit, we have an entire SLIT section below that goes into detail about the options you have.
Layers¶
fluxbox manages the following layers (from highest to lowest):
Windows on a higher layer will always appear above those on a lower one. These layers can be used on application windows, the slit or the toolbar. You can assign applications to a certain layer by specifying it in the ‘apps’ file or through the WindowMenu. We discuss the ‘apps’ file in fluxbox-apps(5). We discuss the WindowMenu in the MENUS section. We discuss layers in more detail in the LAYERS section.
Focus Model¶
The window that has the focus is the one that receives key and mouse events. The focus model is selectable via the Configuration menu located in the root menu. We’ll discuss the different types of focus below in the FOCUS MODEL section.
Windows¶
A left-click (mouse button 1) on any part of the window’s border will raise it. Dragging then moves the window to another part of the desktop. A right click and drag on the border resizes the window. Dragging the resize grips at the left and right bottom corners also will resize the window. Middle clicking on a border or titlebar will immediately lower the window. Right clicking on the titlebar opens the Window menu. The commands unique to this menu are discussed in detail in the Window Menu section.
Tabs¶
fluxbox allows windows to be ‘grouped’ by middle clicking and holding on a window’s tab and dragging it onto another window. This ‘tabbing’ allows you to put multiple applications in one location on the desktop and do several operations (for example, moving or resizing) to all windows in the group. By default, tabs are located just above the window, but they may be embedded in the titlebar or moved to other locations on the outside of the window. Configuration is discussed in TAB OPTIONS section.
You can also set up automatic grouping using the ‘apps’ file. See GROUP SECTIONS in fluxbox-apps(5) for details.
Key Bindings¶
There are a number of key bindings set up by default, which can be configured and extended to just about anything you can imagine with the keyboard. See fluxbox-keys(5) for details on how to do this.
The default bindings set up by fluxbox are as follows:
Mouse clicks on the empty desktop:
Mouse gestures on a window:
Mouse gestures on a window’s titlebar:
Mouse gestures on the toolbar:
Keyboard bindings:
MENUS¶
fluxbox provides a popup menu facility that is used by a few different types of native menus.
When a menu is open, you can click on items with the mouse to activate them. Some special menu items react slightly differently depending on the mouse button you use, but normally you will want to use a left-click (button 1).
You can also use the the keyboard arrow key to navigate, or even type the first few letters of the item’s label to select it, and “enter” to activate the item.
Normally activating a menu item should close the menu. You can also right-click the title are of a menu or press “esc” to close it without activating an item.
Root Menu¶
The root menu is where you can launch commonly-used applications and change different aspects of fluxbox by simply clicking on a menu item. By default it is opened by a right-click on the empty area of the desktop.
The contents of this menu can be configured, see fluxbox-menu(5) for details.
The default menu, which is created by the “fluxbox-generate_menu” command, contains menus for installed applications, as well as a special “Fluxbox menu” item with the items detailed below:
Configure
System Styles
User Styles
Workspace List
Tools
Window Managers
Lock Screen
Fluxbox Command
Reload config
Restart
Exit
Configuration Menu¶
This menu offers the opportunity to set up fluxbox. It contains many options which can be altered manually in the ‘init’ file, but this is an easier and faster way to change the most common settings.
All changes take effect immediately.
Focus Model
Maximize Options
Full Maximization:
Ignore Resize Increment:
Disable Moving / Disable Resizing:
Tab Options
Slit
Toolbar
Transparency
The transparency of individual application windows can be overridden in the ‘apps’ file (fluxbox-apps(5)).
The Force Pseudo Transparency option will force fluxbox to ignore the xcomposite extension and use pseudo-transparency instead of true transparency. Note: When pseudo-transparency is on, the transparency values here only affect titlebars, not window contents.
Opaque Window Moving
Workspace Warping
Window Menu¶
The Window menu is displayed when you right click on the titlebar of a window.
To customize this menu, see the WINDOW MENU section of fluxbox-menu(5).
By default, this menu contains:
Shade
Stick
Send To...
Maximize
Iconify
Raise
Lower
Layer...
Transparency
Remember...
Specifically the setting you may store are:
Workpace:
Jump to workspace:
Head:
Dimensions:
Position:
Sticky:
Decorations:
Shaded:
Minimized:
Maximized:
Fullscreen:
Transparency:
Layer:
Save on close:
These are is covered in more detail in fluxbox-apps(5).
Close
Kill
Workspace Menu¶
The workspace menu can be found, by default, by middle-clicking on the background. This menu contains entries to explore the currently defined workspaces, windows, and add/remove/rename workspaces.
Icons
Workspaces
New Workspace
Edit current workspace name
Remove Last
TOOLBAR¶
The toolbar is a small area to display information like a clock, workspace name, a system tray or a taskbar (iconbar) that can contain the running programs. The color, look, font etc. is defined in the STYLE.
The tools in the toolbar can be enabled/disabled in the ‘init’ file with the session.screen0.toolbar.tools resource. See the RESOURCES section for details on how to alter this value.
The possible tools are:
Clock
Iconbar
Systemtray
WorkspaceName
PrevWorkspace
NextWorkspace
PrevWindow
NextWindow
Other aspects of the toolbar can be configured in two ways: through the toolbar menu, which is accessible in the Configuration part of the RootMenu or with a right click on the edge the toolbar, or by editing the init file (see the RESOURCES section for more information about that).
Toolbar Menu¶
This menu can be opened by right-clicking on the toolbar (though not on a window’s name in the iconbar), or from the Configuration Menu.
All changes take effect immediately. Here are the settings:
Visible
Auto hide
Toolbar width percentage
Maximize Over
Layer...
Placement
Alpha
Iconbar Mode
The first section outlines what types of windows will be shown in the iconbar:
None:
Icons:
NoIcons:
WorkspaceIcons:
WorkspaceNoIcons:
Workspace:
All Windows:
The next section specifies the alignment of the window names shown in the iconbar. The width is specified via the session.screen0.iconbar.iconWidth resource:
Left:
Relative:
Right:
The last option in this submenu is:
Show Pictures:
Clock
Edit Clock Format
FOCUS MODEL¶
The Focus Model defines how windows gain focus (i.e. become the active window, which receives keyboard and mouse events). The focus model can be changed in the configuration menu (usually located under fluxbox menu in the Root Menu.
There are two main aspects of the focus model: how windows gain focus and how tabs gain focus. Each of these has two options: focus follows mouse and click to focus. Focus follows mouse means that windows will gain focus when the mouse hovers over them. Click to focus means that windows will gain focus when the mouse clicks on them.
Thus, there are four main options when choosing a focus model. You should choose one of the first two and one of the last two. They are:
Click To Focus
Mouse Focus
ClickTabFocus
MouseTabFocus
There are three more settings in the “Focus Model” menu:
Focus New Windows
Auto Raise
Click Raises
TAB OPTIONS¶
This section of fluxbox configuration menu lets you configure many features of tabs. Inside of it there are three main options:
Placement
Tabs in Titlebar
Maximize Over
External Tab Width
STYLES¶
fluxbox enables you to use specialized files that contain X(1) resources to specify colors, textures, pixmaps and fonts, and thus the overall look of your window borders, menus and the toolbar.
The default installation of fluxbox provides some of these style files. See fluxbox-style(5) to accommodate the growing number of style components.
Style Overlay¶
In addition to the style file, the overlay file, whose location is specified by session.screen0.styleOverlay (default: ~/.fluxbox/overlay) can be used to set style resources that override all styles. For more information about which parts of fluxbox can be controlled by the overlay file, see fluxbox-style(5).
THE SLIT¶
The slit is a special fluxbox window frame that can contain dockable applications, such as “bbtools” or “window maker dockapps”.
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.
Most dockable applications use the -w option to run in the slit. For example, you could put in your ~/.fluxbox/startup:
bbmail -w & bbpager -w & wmdrawer & exec fluxbox
To use the slit you must have it compiled into fluxbox. This is the default setting.
Slit Menu¶
This menu can be opened by right-clicking on the slit (though not on an application running within the slit), or from the Configuration Menu.
All changes take effect immediately. Here are the settings:
Placement
Layer
Auto hide
Maximize Over
Alpha
Clients
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 when in the slit. The file is generally located at ~/.fluxbox/slitlist.
A simple procedure for getting the slit sequences the way you like it is: 1. Run fluxbox with no pre-loaded dockapps 2. Run dockapps individually in the order you want them 3. Add dockapps to your startfluxbox(1) script
This sequence will be saved by default to ~/.fluxbox/slitlist and will be remembered for future instances of fluxbox.
Users are free to manually edit the slitlist file. It is a simple list of window names, as given by xprop(1), 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 slitlist file, by setting the session.session0.slitlistFile resource.
LAYERS¶
Layers affect the way that windows will overlap each other on the screen. Windows on a higher layer will always appear above those on a lower one, whether they are focused or not. Fluxbox uses 13 layers, starting from 1 (highest).
There are two ways to assign a window to a different layer. When the window is open, you may select the layer in the ‘Layer ...’ submenu of the window menu. The menu gives six choices for the layer, which fluxbox manages by name. The names are (from highest to lowest layer):
The other way to set the layer for a window is through the ‘apps’ file. This method is described in fluxbox-apps(5).
RESOURCES¶
Usually the ~/.fluxbox/init resource file is created and maintained by fluxbox itself. You can use the Configure Menu, mentioned above, to set most of these options. However, we’ll cover all of the resource options that are available to the user. If you edit this file while fluxbox is running, you must “reconfigure” to reload the resource options.
When running fluxbox in a multiple-screen environment the screen0 key can also be screen1, screen2, to customize the behavior of fluxbox on each desktop accordingly. Here are the resources that are currently available:
session.screen0.window.{focus|unfocus}.alpha: integer
Default: 255
session.screen0.{slit|toolbar}.autoHide: boolean
Default: False
session.screen0.{slit|toolbar}.layer: layer
Default: Dock
session.screen0.{slit|toolbar}.placement: placement
Possible options are:
BottomLeft BottomCenter BottomRight LeftBottom LeftCenter LeftTop RightBottom RightCenter RightTop TopLeft TopCenter TopRight
Slit default: RightBottom
Toolbar default: BottomCenter
session.screen0.{slit|toolbar|tabs}.maxOver: boolean
Default: False
session.screen0.toolbar.height: integer
Default: 0
session.screen0.toolbar.visible: boolean
Default: True
session.screen0.toolbar.widthPercent: integer
Default: 100
session.screen0.toolbar.tools: tools
Possible tools:
clock iconbar nextwindow prevwindow nextworkspace prevworkspace systemtray workspacename
Default:
workspacename, prevworkspace, nextworkspace, iconbar, prevwindow, nextwindow, systemtray, clock
session.screen0.{slit|toolbar}.onhead: integer
Default: 0 for slit, 1 for toolbar
session.screen0.iconbar.mode: pattern
Default: {static groups} (workspace)
session.screen0.iconbar.usePixmap: boolean
Default: True
session.screen0.iconbar.iconTextPadding: integer
Default: 10
session.screen0.iconbar.alignment: position
Available options:
Default: Relative
session.screen0.iconbar.iconWidth: integer
Default: 128
session.screen0.strftimeFormat: date
Default: %k:%M
session.screen0.tabs.intitlebar: boolean
Default: True
session.screen0.tab.placement: placement
Default: TopLeft
session.screen0.tab.width: integer
Default: 64
session.screen0.focusModel: ClickToFocus|MouseFocus|StrictMouseFocus
Default: ClickToFocus
session.screen0.autoRaise: boolean
Default: True
session.autoRaiseDelay: integer
Default: 250
session.screen0.clickRaises: boolean
Default: True
session.screen0.workspacewarping: boolean
Default: True
session.screen0.showwindowposition: boolean
Default: False
session.screen0.defaultDeco: string
Default: NORMAL
session.screen0.menuDelay: integer
Default: 200
session.screen0.focusNewWindows: boolean
Default: True
session.screen0.workspaceNames: names
Default: Workspace 1, Workspace 2, Workspace 3, Workspace 4
session.screen0.edgeSnapThreshold: integer
Default: 10
session.screen0.windowPlacement: strategy
Available strategies:
Default: RowSmartPlacement
session.screen0.rowPlacementDirection: LeftToRight|RightToLeft
Default: LeftToRight
session.screen0.colPlacementDirection: TopToBottom|BottomToTop
Default: TopToBottom
session.screen0.fullMaximization: boolean
Default: False
session.screen0.opaqueMove: boolean
Default: True
session.screen0.workspaces: integer
Default: 4
session.cacheLife: minutes
Default: 5
session.cacheMax: KbSize
Default: 200
session.colorsPerChannel: integer
Default: 4
session.doubleClickInterval: integer
Default: 250
session.forcePseudoTransparency: boolean
Default: False
session.ignoreBorder: boolean
Default: False
session.tabPadding: integer
Default: 0
session.tabsAttachArea: Window|Titlebar
Default: Window
session.titlebar.{left|right}: buttons
The available options are:
Close Maximize MenuIcon Minimize Shade Stick LHalf RHalf
Default left: Stick
Default right: Shade Minimize Maximize Close
LHalf and RHalf are buttons to quickly place a window into the left and right half of the current monitor.
All of the location resources following require a pathname to their specific files. This is where you can specify different files. Most of the defaults will be located in the user’s ~/.fluxbox directory.
session.appsFile: location
session.groupFile: location
session.keyFile: location
session.menuFile: location
session.slitlistFile: location
session.styleFile: location
session.styleOverlay: location
session.screen0.windowMenu: location
Default: blank
ENVIRONMENT¶
HOME
DISPLAY
fluxbox can also take advantage of other environment variables if they are set before fluxbox is started. For example, if $TERM is set, then it will be available whenever fluxbox uses the shell, such as the ‘keys’ file ExecCommand or the root menu’s [exec] tag. See fluxbox-keys(5) and fluxbox-menu(5) for details.
The ‘keys’ file also provides two commands that can alter the current environment of fluxbox: SetEnv and Export. Any changes made by these commands will also affect the environment as seen by fluxbox and all child processes started after that point. See fluxbox-keys(5) for details.
For more information about environment variables in general, see your shell’s manual.
SIGNALS¶
fluxbox responds to the following signals:
AUTHORS¶
fluxbox is written and maintained by Henrik Kinnunen <fluxgen at fluxbox org>, Simon Bowden <rathnor at fluxbox org>, Mathias Gumz <akira at fluxbox org>, and Mark Tiefenbruck <mark at fluxbox org>, with contributions and patches merged from many individuals around the world.
Blackbox was written and maintained by Brad Hughes <blackbox at alug org> and Jeff Raven <jraven at psu edu>.
This manpage is the combined work of:
ONLINE DOCUMENTATION¶
The Official fluxbox website: http://www.fluxbox.org
The Official fluxbox wiki: http://www.fluxbox-wiki.org
Many compatible themes: http://tenr.de
BUGS¶
If you find any bugs, please visit the #fluxbox irc channel on irc.freenode.net or submit them to the bug tracker at http://sf.net/projects/fluxbox . Or you may subscribe to one of the mailinglists. More information can be found on the official website.
SEE ALSO¶
fluxbox-apps(5) fluxbox-keys(5) fluxbox-style(5) fluxbox-menu(5) fluxbox-remote(1) fbsetroot(1) fbsetbg(1) fbrun(1) startfluxbox(1)
AUTHOR¶
Henrik Kinnunen <fluxgen@fluxbox.org>
13 February 2013 | fluxbox.txt |