fluxbox vs openbox

estrabd said:
I think what I am looking for is a kind-of-tiling manager that blurs the lines between something like openbox/fluxbox, but easily allows me to enter into/out-of a tiling mode when so moved.

Although this is a bit off topic for an openbox/fluxbox comparison thread, I was testing out dwm as well as openbox and fluxbox. It may be more like what you're looking for. It has tiled, floating and a monocle mode when you want one application full screen. You can see http://dwm.suckless.org/ for details. Is there a thread in this section for dwm? Seems like there's a lot to setting up properly and a lot you can do with it once it is set up to your liking.
 
I tried to install open box today. The docs say to edit ~/.config/menu.xml or if that doesn't exist, /etc/xdg/openbox/menu.xml. I don't have either of those. What gives? At first I had a right-click menu then I minimized all windows and had nothing but a black desktop and mouse cursor that now did nothing when I clicked. I had to reboot. Fluxbox is the only one that's ever worked for me and I've tried several. Any hints how I can get openbox working?
 
/usr/local/etc/xdg/openbox/menu.xml is where the default menus is. The docs are Linux based and you should recall that FreeBSD install software to /usr/local/ so you should look there.

OpenBox by default has no background or panels so all you will see is a black background and mouse cursor.

You did not need to reboot, all you have to do was kill X, CRTL-ALT-TAB. But, I'm not sure what you error was to make the menu disappear.
 
Ok, got it thanks. But editing the menu is more difficult than fluxbox. I don't mean because it's xml. I mean that it seems you have to put all your items in submenues. I want things at the root of the menu so I don't always have to remember which sub menu they're in. I also don't want to have to do extra clicks to get to them. How do you make an app appear at the root level of the menu?
 
You don't have to everything in submenus, if you go to the section root-menu section, something like below:

Code:
<menu id="root-menu" label="Openbox 3">
 
 <item label="Thunar">
  <action name="Execute">
    <command>thunar</command>
  </action>
 </item>

</menu>

This would put Thunar at the root menu level.
 
Great, I'm getting it going but when I minimize a window it disappears. How do you get it back? Also Ctrl+Alt+Tab isn't doing anything. If I minimize all windows I'm stuck. I think there may be a toolbar down below my screen that I can't see. My screen size may be wrong, where can I configure that?
 
I'm giving up on openbox. Too much hassle and can't get it working. Fluxbox is way better. The menu is easy to configure, just one simple text line no xml. It can minimize and maximize windows. You can change theme colors real easy right from the main right click menu. I can't get openbox to set the background either using feh. fbsetbg works fine in fluxbox. Fluxbox is still the winner to me. Has never failed me and is easy to configure and best of all, It works!
 
BSDRich said:
Great, I'm getting it going but when I minimize a window it disappears. How do you get it back?

In Openbox, you should be able to Alt-Tab to any Window and have it cycle through your windows. If it's minimized, Alt-Tab will usually restore to normal size. Personally, I like the Alt-Tab feature better than having a panel in a window manager, but that's just my preference.

I usually set up a similar key combination in Fluxbox, but it doesn't seem to cycle through the windows quite as well as Openbox.
 
alie said:
how about web browser guys ? i tried dillo.. its very bad... doesnt support CSS :(

i'm trying JWM now.. its nice and better than fluxbox :D
I use Firefox 3.5 and tend to have few problems. Opera was working fairly well last time I messed around with it as well. There are a few other possibilities, but personally I tend to stick with one of the more common browsers just because.

As for text editors, I'd definitely agree that any time spent learning to use vi is going to be paid back in no time flat. It's just that good.
 
Anyone knows how to start a program with specified window placement and/or geometry in Openbox?

I tried to do it with devilspie but that results in this error:
(devilspie:45976): Wnck-WARNING **: Unhandled action type _OB_WM_ACTION_UNDECORATE
 
As requested a whlie ago - my .twmrc

Code:
#*********************************
# GENERAL SETTINGS
#*********************************
AutoRelativeResize # No cross of window edge needed for resize
DecorateTransients # Also decorate transient windows
NoBackingStore # Minimize repainting of menus
NoCaseSensitive # Case ignoring for icon manager
NoDefaults # No default title buttons, we will define them
NoGrabServer # Do not grab the server when not needed
NoHighLight # Dont change border of windows on mouse over
NoTitleHighlight # No highlight for titlebar of selected window
#OpaqueMove # Move window instead of outline
RandomPlacement # Windows without geometry are placed randomly
RestartPreviousState # Try to restart defaults from last x session
UsePPosition "on" # Honor placement
NoIconManagers # No icon manager is showed
IconifyByUnMapping # Dont try to map any icons?
NoDefaults # Don't use WM default icons and bindings
# DontMoveOff # Windows arent allowed to move outside the screen

#*********************************
# WINDOW BORDERS ETC
#*********************************
BorderWidth 1 # Number of pixels for entire window border
FramePadding 1 # Number of pixels between titlebar buttons and frame
MenuBorderWidth 1 # Number of pixels for menu border
#NoMenuShadows # No shadow behind the menu
TitleButtonBorderWidth 0 # Number of pixels for button border
ButtonIndent 0 # Larger seems to squash buttons together
TitlePadding 2 # Number of pixels around title buttons

#*********************************
# TITLE BAR BUTTONS
#*********************************
IconDirectory "/home/admin/.twm/icons" # Directory for non default icons
LeftTitleButton "resize.xbm"=f.resize
RightTitleButton "minimize.xbm"=f.iconify
RightTitleButton "maximize.xbm"=f.fullzoom
RightTitleButton "close.xbm"=f.delete

#*********************************
# COLOR SETTINGS
#*********************************


Color
{
BorderColor         "#101F48"
DefaultBackground   "#D6D6D6"
DefaultForeground   "#303730"

TitleBackground     "#2F579F"
TitleForeground     "#FFFFFF"

MenuTitleBackground "#2F579F"
MenuTitleForeground  "#FFFFFF"

#MenuBackground      "#D6D6D6"
MenuBackground      "#F8F8F8"
#MenuForeground      "#303730"
MenuForeground      "#696969"

MenuBorderColor      "#D6D6D6"
MenuShadowColor     "#303730"

PointerForeground "Black"
PointerBackground "White"
}



#Color
#{
#BorderColor         "grey10"
#DefaultBackground   "#D6D6D6"
#DefaultForeground   "#000000"

#TitleBackground     "RoyalBlue4"
#TitleForeground     "White"

#MenuTitleBackground "RoyalBlue4"
#MenuTitleForeground "White"

#MenuBackground      "#D6D6D6"
#MenuForeground      "#414D5B"

#MenuShadowColor     "#000000"
#MenuBorderColor     "grey10"
#}


#*********************************
# FONT SETTINGS
#*********************************
TitleFont "-dec-terminal-medium-*-*-*-*-*-*-*-*-*-*-*-*"
ResizeFont "-dec-terminal-medium-*-*-*-*-*-*-*-*-*-*-*-*"
MenuFont "-dec-terminal-medium-*-*-*-*-*-*-*-*-*-*-*-*"
ResizeFont "-dec-terminal-medium-*-*-*-*-*-*-*-*-*-*-*-*"

#*********************************
# CURSOR SETTINGS
#*********************************
Cursors
{
Frame "top_left_arrow"
Title "top_left_arrow"
Icon "top_left_arrow"
IconMgr "top_left_arrow"
Move "fleur"
Resize "fleur"
Menu "top_left_arrow"
Button "top_left_arrow"
Wait "trek"
Select "dot"
Destroy "pirate"
}
#*********************************
# NO TITLE BAR SETTINGS
#*********************************
NoTitle
{
"conky"
"xclock"
"aterm"
"asclock"
}

#*********************************
# AUTORAISE WINDOWS
#*********************************
Autoraise
{
# "xterm"
#"rxvt"
# "Eterm"
}

#**************************************************
#  CURSOR TO WINDOW ON DE-ICONIFY
#**************************************************
WarpCursor
{		
"xterm"
}

#*************************************************************
# MOUSE SETTINGS AND WINDOW BEHAVIOURS
#*************************************************************
#  Button1=left, Button2=middle, Button3=right, m=alt, c=ctrl, s=shift

# The root window actions i.e. clicking on the backgound
Button1 = : root : f.menu "RootMenu"
Button2 = : root : f.menu "System"
# Button2 = : window : f.circleup
Button3 = : root : f.menu "TwmWindows"

# Left click the window title to lower / raise + gain focus or move
Movedelta 1
Button1=	:title: f.function "raise-lower-move"
Function "raise-lower-move" { f.move f.raiselower }

# Middle click the window title for options for individual windows
Button2 = : title|frame : f.menu "WindowMenu"

# Right click window title to resize the window by mousing beyond frame
Button3 = : title|frame : f.resize

# Hold alt key and left click to move entire window
Button1 = m : window : f.move

# Hold shift key and right click / move to resize. Best near edges than window centre.
Button3 = s : window : f.resize

# Hold Alt and Tab cycles through windows bringing up focus
Function "winup" { f.circleup }
"Tab" = m : root|window|frame|title : f.function "winup"

# Hold Alt plus left click window title to maximize window vertically
Button1 = m : title|frame : f.zoom

# Hold Alt plus right click window title to maximize window vertically
Button3 = m : title|frame : f.horizoom

DefaultFunction f.nop

#*********************************
# THE POPUP MENU
#*********************************

menu "RootMenu"
{
"FreeBSD" f.title
"Editor" !"xfw &"
"Fileman" !"xfe &"
"Terminal" !"xterm &"
"Internet" f.menu "Internet"
"MultiMedia" f.menu "Multimedia"
"Graphics" f.menu "Graphics"
"Utilities" f.menu "Utils"
"Restart"f.restart
"Quit"f.quit
}

menu "System"
{
"System" f.title
"To Desktop 1"!"vdesk 1 &"
"To Desktop 2"!"vdesk 2 &"
"To Desktop 3"!"vdesk 3 &"
"To Desktop 4"!"vdesk 4 &"
"Reread .twmrc " f.twmrc
"End Task" f.exec "xkill &"
}

menu "WindowMenu"
{
"Window Ops    " f.title
"Vertical*beep* *beep* *beep* " f.zoom
"Horizontal*beep* *beep* " f.horizoom
"Left*beep* *beep* *beep* *beep* *beep* " f.leftzoom
"Right*beep* *beep* *beep* *beep* *beep*" f.rightzoom
"Top*beep* *beep* *beep* *beep* *beep* *beep*" f.topzoom
"Bottom*beep* *beep* *beep* *beep* " f.bottomzoom
"AutoRaise     " f.autoraise
"Refresh       " f.refresh
"Kill          " f.destroy
}

menu "Internet"
{
"Internet" f.title
"Opera Browser" !"opera &"
"Links Browser" !"links -driver x http://www.google.com &"
"IMRC Client" !"xterm -e centerim &"
"FTP Client" !"xterm -fg grey -bg black -geometry 140x40+200+200 -e mc /#ftp:username@ftp.isp.com &"
"SSH Client" !"xterm -fg grey -bg black -geometry 140x40+200+200 -e mc /#sh:root@192.168.1.10 &"
}

menu "Multimedia"
{
"Multimedia" f.title
"Audio Stream" f.menu "Stream"
"Groove Salad" !"xterm -e mp3blaster http://streamer-ntc-aa01.somafm.com:80/stream/1018 &"
"Swiss Groove" !"xterm -e mp3blaster http://swiss1.impek.tv:80 &"   
"Play DVD" !"/usr/local/bin/mplayer dvd:// &"
"Play MP3" !"xterm -fn fixed -e mp3blaster &"
"Play CD" !"cdcontrol -f /dev/acd1 play &"
"Stop CD" !"cdcontrol -f /dev/acd1 stop &"
"Audio Mixer" !"xterm -geometry 80x20+300+300 -e nmixer &"
}

menu "Stream"
{
"Audio Streams"	f.title
"Rip Groove Salad" !"xterm -e streamripper http://streamer-ntc-aa01.somafm.com:80/stream/1018 -r -d ~/mp3 -s &"
"Rip Swiss Groove" !"xterm -e streamripper http://swiss1.impek.tv:80 -r -d ~/mp3 -s &"
"Listen to Rip" !"xterm -e mp3blaster http://localhost:8000 &"
}

menu "Utils"
{
"Utils" f.title
"Top Ps "!"xterm -fg grey -bg black -e top &"
"PDF Docs" !"xpdf &"
"Manual " !"xman &"
"Calendar "!"xcalendar &"
"Calculator" !"xcalc &"
"Clipboard" !"xclipboard &"
"LCD Off" !"xset -display 0:0 dpms force off &"
}

menu "Graphics"
{
"Graphics" f.title
"XvEdit" !"xv &"
"Xpaint" !"xpaint &"
"Sshot!" !"xterm -bg black -fg grey -e scrot -d 5 -c -e 'mv $f /usr/home/admin/' &"
"Magnify       " !"xmag &"
"ColorSel "!"xcolorsel &"
"Xfont" !"xfontsel &"
}
 
Also, my .conkyrc
Code:
# Conky sample configuration
#
# the list of variables has been removed from this file in favour
# of keeping the documentation more maintainable.
# Check http://conky.sf.net for an up-to-date-list.

# set to yes if you want Conky to be forked in the background
background yes

# X font when Xft is disabled, you can pick one with program xfontsel
#font 5x7
#font 6x10
#font 7x13
#font 8x13
#font 9x15
#font *mintsmild.se*
#font -*-*-*-*-*-*-34-*-*-*-*-*-*-*

# Use Xft?
use_xft yes

# Xft font when Xft is enabled
xftfont mono:size=8

# Text alpha when using Xft
xftalpha 0.8

# Print everything to stdout?
# out_to_console no

# MPD host/port
# mpd_host localhost
# mpd_port 6600
# mpd_password tinker_bell

# Print everything to console?
# out_to_console no

# mail spool
# mail_spool $MAIL

# Update interval in seconds
update_interval 5.0

# This is the number of times Conky will update before quitting.
# Set to zero to run forever.
total_run_times 0

# Create own window instead of using desktop (required in nautilus)
own_window no

# If own_window is yes, you may use type normal, desktop or override
own_window_type normal

# Use pseudo transparency with own_window?
own_window_transparent yes

# If own_window_transparent is set to no, you can set the background colour here
# own_window_colour hotpink

# If own_window is yes, these window manager hints may be used
own_window_hints undecorated,sticky,skip_taskbar,skip_pager

# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes

# Minimum size of text area
minimum_size 1280 0

# Draw shades?
draw_shades no

# Draw outlines?
draw_outline no

# Draw borders around text
draw_borders no

# Draw borders around graphs
draw_graph_borders yes

# Stippled borders?
# stippled_borders 8

# border margins
border_margin 1

# border width
border_width 1

# Default colors and also border colors
# default_color white
# default_shade_color black
# default_outline_color black

default_color grey
# own_window_colour 324553
# own_window_colour 455B69

# Text alignment, other possible values are commented
alignment top_left
#alignment top_right
#alignment bottom_left
#alignment bottom_right
#alignment none

# Gap between borders of screen and text
# same thing as passing -x at command line
gap_x 2
gap_y 2

# Subtract file system buffers from used memory?
no_buffers yes

# set to yes if you want all text to be in uppercase
uppercase no

# number of cpu samples to average
# set to 1 to disable averaging
cpu_avg_samples 2

# number of net samples to average
# set to 1 to disable averaging
net_avg_samples 2

# Force UTF8? note that UTF8 support required XFT
override_utf8_locale no

# Add spaces to keep things from moving about?  This only affects certain objects.
use_spacer none

# Allow each port monitor to track at most this many connections (if 0 or not set, default is 256)
#max_port_monitor_connections 256

# Maximum number of special things, e.g. fonts, offsets, aligns, etc.
#max_specials 512

# Maximum size of buffer for user text, i.e. below TEXT line.
#max_user_text 16384

# variable is given either in format $variable or in ${variable}. Latter
# allows characters right after the variable and must be used in network
# stuff because of an argument
# stuff after 'TEXT' will be formatted on screen

TEXT
${color}$sysname $kernel-$machine ${color}Up: ${color FFFFFF}$uptime ${color}Proc: ${color FFFFFF}$processes ${color}Active: ${color FFFFFF}$running_processes ${color}Cpu: ${color FFFFFF}${cpu}% ${color}${cpugraph 8,40 c0c0c0 dddddd} ${color}Mem: ${color FFFFFF}$mem $memperc% ${color}${membar 8,40} ${color}Net In: ${color FFFFFF}${downspeed dc0} Kb/s ${color}${downspeedgraph dc0 8,40 c0c0c0 dddddd} ${color FFFFFF}${color}Net Out: ${color FFFFFF}${upspeed dc0} Kb/s ${color}${upspeedgraph dc0 8,40 c0c0c0 dddddd} ${color}Total In: ${color FFFFFF}${totaldown dc0} ${color}Total Out: ${color FFFFFF}${totalup dc0} ${color}Time: ${color FFFFFF}${time %k:%M}${color} Date: ${color FFFFFF}${time %d-%m-%y}
 
BSDRich said:
I'm giving up on openbox. Too much hassle and can't get it working. Fluxbox is way better. The menu is easy to configure, just one simple text line no xml. It can minimize and maximize windows. You can change theme colors real easy right from the main right click menu. I can't get openbox to set the background either using feh. fbsetbg works fine in fluxbox. Fluxbox is still the winner to me. Has never failed me and is easy to configure and best of all, It works!

Fluxbox is a complete desktop manager package, openbox is just a windows manager handling windows and their decorations. If you find XML difficult to manage there is app that comes with openbox called "obconf" a GTK gui application to easily manipulate your configs and change themes on the fly, how ever it has been segfaulting for me on amd64 and I havent checked status of this issue for a while.. they could have fixed it by now. To change background 'esetroot' works best with openbox (comes with eterm) as it supports pseudo transparency.
 
expl said:
Fluxbox is a complete desktop manager package, openbox is just a windows manager handling windows and their decorations. If you find XML difficult to manage there is app that comes with openbox called "obconf" a GTK gui application to easily manipulate your configs and change themes on the fly, how ever it has been segfaulting for me on amd64 and I havent checked status of this issue for a while.. they could have fixed it by now. To change background 'esetroot' works best with openbox (comes with eterm) as it supports pseudo transparency.

Have you tried graphics/hsetroot? Works flawlessly for me, and no need to compile eterm :D
 
killasmurf86 said:
Have you tried graphics/hsetroot? Works flawlessly for me, and no need to compile eterm :D

I just recently switched from Eterm to mrxvt due to tabs and I used Eterm/esetroot for ages before, haven´t tried anything else but I supose there are quite a few applications that can do a proper job at wallpaper change.
 
If i should choose openbox or fluxbox,i would choose fluxbox.
But dwm is the best window manager for me!!!!
there is no dependencies & is veeeery fast :)
Just you download the source,make the changes,compile the source and finished :)
 
About differences between openbox and fluxbox ... and pekwm.

WINDOW SWITCHING BEHAVIOUR
Proper 'ALT-TAB' behaviour is only available on fluxbox and openbox, pekwm lacks a lot here, check this for more information: http://pekwm.org/projects/pekwm/tasks/210

While fluxbox switches between windows instantly, openbox/pekwm can show list of windows while switching and openbox can also show black/white border for every window (like metacity).​

WORKSPACE MENU
The so-called workspace menu in fluxbox expands into submenu for each workspace, which makes its useless for generall usage.

Both pekwm/openbox provide here workspace menu that shows all apps on all workspaces isntantly, but only openbox can render all application icons properly here.​

PROPER ICON RENDERRING
Both pekwm/fluxbox cannot render application icons properly, while openbox can, fluxbox renders properly icons in the root menu, but only if you select exact size for the icon (same as actual image size), if image is bigger, its scaled version would be ugly.​

WORKING AREA
At both openbox/pekwm we can set margins for the workspace, the space on the sides which will NOT be used for windows, to achieve the same on fluxbox, you can only use dome dockapp with displaying transparent PNG file (dirty hack) with do not maximize over slit option.​

ACTIONS ON WINDOW BAR/BORDER
At pekwm/openbox we can define various actions that will happen when clicking/scrolling the window border/bar, some custom commands (like transparency increasing/decresing with transset-df), fluxbox can not offer that​

STANDARDS
Both pekwm/fluxbox are NOT fully compilant with NETWM/EMWH while openbox is (but I never suffered from the fact that they arent fully compilant).​

LANGUAGE (as curiosity)
Both pekwm/fluxbox are written in C++ while openbox is written in C, which make it little faster, but its propably hard to notice this on Core 2 Duo class machines these days.​

OTHER
Both pekwm/fluxbox support tabs, but I do not remember when I last used them ;)
From these two fluxbox also offers taskbar, but being frank with you, I must say that having so nice workspace menu on openbox I do not need taskbar any more.​

COMMAND SUBSHELL
If you put something like that into fluxbox root menu [cmd=]feh --bg-scale $( cat ~/.fehbg | cut -d ' ' -f 3 )[/cmd], then fluxbox will execute that without any problems, while openbox will throw an error (havent checked for pekwm), same for [cmd=]` ... `[/cmd]​

... my thoughts on differences between these 3 WMs.
 
@sw2wolf

Both are very lightweight, Openbox is a little more lightweight and faster because its written in C instead of C++ (Fluxbox), but the difference probably will not be noticeable.
 
Is there anything in any of them to make possible pseudo-tiling? Maybe an external program that is able to tile windows? That is really the only thing missing. Something like scrotwm-openbox combo would be perfect (and no, I won't try awesome).
 
Back
Top