Eric Day

Thoughts, code, and other oddments.
Dark | Light

Notes - Linux

Fluxbox Configuration Files

I have a VERY basic window system setup: no frills, only what I need. Here are the fluxbox config files that run it:

.fluxbox/init

session.screen0.overlay.lineWidth:	1
session.screen0.overlay.lineStyle:	LineSolid
session.screen0.overlay.joinStyle:	JoinMiter
session.screen0.overlay.capStyle:	CapNotLast
session.screen0.slit.autoHide:	false
session.screen0.slit.maxOver:	false
session.screen0.slit.direction:	Vertical
session.screen0.slit.layer:	Dock
session.screen0.slit.alpha:	255
session.screen0.slit.onhead:	0
session.screen0.slit.placement:	RightCenter
session.screen0.slit.onTop:	False
session.screen0.toolbar.layer:	Desktop
session.screen0.toolbar.alpha:	255
session.screen0.toolbar.maxOver:	false
session.screen0.toolbar.height:	0
session.screen0.toolbar.onTop:	False
session.screen0.toolbar.autoHide:	false
session.screen0.toolbar.widthPercent:	10
session.screen0.toolbar.onhead:	0
session.screen0.toolbar.tools:	workspacename, clock
session.screen0.toolbar.placement:	TopRight
session.screen0.toolbar.visible:	false
session.screen0.tabs.maxOver:	false
session.screen0.tabs.intitlebar:	true
session.screen0.tabs.usePixmap:	false
session.screen0.window.focus.alpha:	255
session.screen0.window.unfocus.alpha:	255
session.screen0.titlebar.left:	Stick 
session.screen0.titlebar.right:	Minimize Maximize Close 
session.screen0.tab.alignment:	Left
session.screen0.tab.width:	64
session.screen0.tab.rotatevertical:	True
session.screen0.tab.placement:	TopLeft
session.screen0.tab.height:	16
session.screen0.menu.alpha:	255
session.screen0.iconbar.alignment:	Relative
session.screen0.iconbar.deiconifyMode:	Follow
session.screen0.iconbar.iconTextPadding:	10l
session.screen0.iconbar.iconWidth:	70
session.screen0.iconbar.mode:	{static groups} (workspace)
session.screen0.iconbar.usePixmap:	true
session.screen0.iconbar.wheelMode:	Screen
session.screen0.clickRaises:	false
session.screen0.focusLastWindow:	true
session.screen0.userFollowModel:	Follow
session.screen0.workspaces:	5
session.screen0.fullMaximization:	false
session.screen0.opaqueMove:	false
session.screen0.antialias:	true
session.screen0.menuDelayClose:	0
session.screen0.windowMenu:	
session.screen0.resizeMode:	Bottom
session.screen0.strftimeFormat:	%l:%M
session.screen0.demandsAttentionTimeout:	500
session.screen0.defaultDeco:	NORMAL
session.screen0.windowPlacement:	RowSmartPlacement
session.screen0.rootCommand:	
session.screen0.windowScrollAction:	
session.screen0.reversewheeling:	false
session.screen0.windowScrollReverse:	false
session.screen0.rowPlacementDirection:	LeftToRight
session.screen0.focusModel:	MouseFocus
session.screen0.tabFocusModel:	ClickToTabFocus
session.screen0.imageDither:	false
session.screen0.workspacewarping:	true
session.screen0.menuDelay:	0
session.screen0.showwindowposition:	true
session.screen0.autoRaise:	false
session.screen0.menuMode:	Delay
session.screen0.edgeSnapThreshold:	0
session.screen0.followModel:	Ignore
session.screen0.decorateTransient:	false
session.screen0.colPlacementDirection:	TopToBottom
session.screen0.allowRemoteActions:	false
session.screen0.focusNewWindows:	true
session.screen0.workspaceNames:	1,2,3,4,5
session.screen0.desktopwheeling:	true
session.screen0.sloppywindowgrouping:	true
session.titlebar.left:	Stick 
session.titlebar.right:	Minimize Maximize Close 
session.styleFile:	~/.fluxbox/style
session.cacheMax:	200l
session.tabs:	true
session.imageDither:	True
session.keyFile:	~/.fluxbox/keys
session.colorsPerChannel:	4
session.useMod1:	true
session.forcePseudoTransparency:	false
session.tabPadding:	0
session.opaqueMove:	False
session.modKey:	Mod1
session.styleOverlay:	~/.fluxbox/overlay
session.iconbar:	true
session.focusTabMinWidth:	0
session.ignoreBorder:	false
session.cacheLife:	5l
session.appsFile:	~/.fluxbox/apps
session.configVersion:	10
session.autoRaiseDelay:	250
session.groupFile:	~/.fluxbox/groups
session.menuFile:	~/.fluxbox/menu
session.numLayers:	13
session.slitlistFile:	~/.fluxbox/slitlist
session.doubleClickInterval:	250
session.tabsAttachArea:	Window

.fluxbox/keys

OnDesktop Mouse1 :hideMenus
OnDesktop Mouse2 :workspaceMenu
OnDesktop Mouse3 :rootMenu
OnDesktop Mouse4 :nextWorkspace
OnDesktop Mouse5 :prevWorkspace

OnDesktop XF86AudioRaiseVolume :ExecCommand amixer -q set Master 5%+
OnDesktop XF86AudioLowerVolume :ExecCommand amixer -q set Master 5%-
OnDesktop XF86AudioMute :ExecCommand amixer -q set Master 0%
OnDesktop XF86AudioNext :ExecCommand pkill madplay
OnDesktop XF86AudioPrev :ExecCommand pkill madplay
OnDesktop XF86AudioPlay :ExecCommand pkill play
OnDesktop F18 :ExecCommand pkill play

OnDesktop XF86HomePage :ExecCommand amixer -q set Master 5%+
OnDesktop XF86Mail :ExecCommand amixer -q set Master 5%-
OnDesktop F14 :ExecCommand pkill madplay
OnDesktop XF86Tools :ExecCommand pkill madplay

Control Right :FocusRight
Control Left :FocusLeft
Control Mod1 Right :NextWorkspace
Control Mod1 Left :PrevWorkspace

.fluxbox/menu

[begin] (eday)
  [exec] (iceweasel) { iceweasel }
  [exec] (skype) { skype }
  [exec] (virtualbox) { virtualbox }
  [exec] (gimp) { gimp }
  [exec] (openoffice) { ooffice }
  [exec] (xterm) { xterm -b 0 -w 0 -ls -geometry 80x40 -vb -sl 1000 -bg rgb:00/0
0/00 -fg rgb:cc/cc/cc }
  [exec] (lock) { xscreensaver-command -lock }
  [config] (Configuration)
  [workspaces] (Workspaces)
  [reconfig] (Reconfigure)
  [restart] (Restart)
  [exit] (Exit)
[end]

.fluxbox/style

*focus:                         Flat Solid
*unfocus:                       Flat Solid
*color:                         #222222
*unfocus.color:                 #111111
*textColor:                     #880000
*unfocus.textColor:             #880000
*focusColor:                    #880000
*unfocusColor:                  #440000
*picColor:                      #880000
*unfocus.picColor:              #440000
*borderWidth:                   0
*font:                          Andale-10

*justify:                       center

window.handleWidth:             5
window.grip.focus.color:        #880000
window.grip.unfocus.color:      #440000

menu.borderColor:               #111111
menu.borderWidth:               1
menu.bullet:                    triangle
menu.bullet.position:           right
menu.frame:                     Flat Solid
menu.frame.color:               #000000
menu.frame.justify:             left
menu.hilite:                    Flat Solid
menu.hilite.color:              #000000
menu.hilite.textColor:          #cccccc
menu.title:                     Flat Solid
menu.title.color:               #000000

.fluxbox/apps

[app] (name=xclock)
    [Sticky]   {yes}
    [Layer]    {2}
    [Hidden]   {yes}
    [Tab]      {no}
    [Deco]     {NONE}
    [Position] (UPPERRIGHT) {0 0}
[end]

[app] (title=music)
    [Sticky]   {yes}
    [Layer]    {2}
    [Hidden]   {yes}
    [Tab]      {no}
    [Deco]     {NONE}
    [Position] (UPPERRIGHT) {84 0}
[end]

[app] (name=skype)
    [Workspace] {1}
    [Position]  (UPPERRIGHT) {0 26}
[end]

[app] (title=x1)
    [Workspace] {0}
    [Deco]      {NONE}
    [Position]  {0 0}
[end]
[app] (title=x2)
    [Workspace] {0}
    [Deco]      {NONE}
    [Position]  {480 0}
[end]
[app] (title=x3)
    [Workspace] {0}
    [Deco]      {NONE}
    [Position]  {960 26}
[end]
[app] (title=x4)
    [Workspace] {1}
    [Deco]      {NONE}
    [Position]  {0 0}
[end]
[app] (title=x5)
    [Workspace] {1}
    [Deco]      {NONE}
    [Position]  {480 0}
[end]
[app] (title=x6)
    [Workspace] {2}
    [Deco]      {NONE}
    [Position]  {0 0}
[end]
[app] (title=x7)
    [Workspace] {2}
    [Deco]      {NONE}
    [Position]  {480 0}
[end]
[app] (title=x8)
    [Workspace] {2}
    [Deco]      {NONE}
    [Position]  {960 26}
[end]

.fluxbox/LCD

#!/bin/sh

common_options='-b 0 -w 0 -ls -vb -sl 1000 -bg rgb:00/00/00 -fg rgb:cc/cc/cc'

xterm $common_options -geometry 66x2 -n music -T music -e screen -d -R music &

xclock -digital -bg rgb:00/00/00 -fg rgb:cc/cc/cc -strftime "%m/%d %H:%M" -padding 2 -fn 9x15 -norender &

xterm $common_options -geometry 80x69 -n x1 -T x1 -e ssh -t oddments.org screen -d -R irc1 &
xterm $common_options -geometry 80x69 -n x2 -T x2 -e ssh -t oddments.org screen -d -R irc2 &
xterm $common_options -geometry 80x67 -n x3 -T x3 -e screen -d -R x3 &
xterm $common_options -geometry 80x69 -n x4 -T x4 -e screen -d -R x4 &
xterm $common_options -geometry 80x69 -n x5 -T x5 -e screen -d -R x5 &
xterm $common_options -geometry 80x69 -n x6 -T x6 -e screen -d -R x6 &
xterm $common_options -geometry 80x69 -n x7 -T x7 -e screen -d -R x7 &
xterm $common_options -geometry 80x67 -n x8 -T x8 -e screen -d -R x8 &

I don't use the slit, so that config file is empty.

This creates a small two row window at the top for music (using madplay and some custom scripts) along with an xclock. These are sticky so they are visible on all workspaces.

I have two workspaces dedication for full length, 80 character wide xterms. You can fit exactly four wide on a 1920×1200 screen (my external 24” LCD), and exactly three wide on a 1440×900 screen (the laptop LCD). I remove all window decorations so they fit with no overlap, and the screen sessions on each allow me to nest them as much as needed (I find this much more convenient than a bunch of floating windows.

It ends up looking like this:

And here is a snapshot with firefox, skype (with built-in web cam working), and gimp.

Blog
Wiki
About
Resume
RSS
Comments

E-Mail
Launchpad
LinkedIn
Twitter
identi.ca
Facebook

OpenStack
Scale Stack
Gearman
NW Veg
Veg Food & Fit

Linux On Laptops