Fluxbox Transparency

How to have decent transparency  and fading in fluxbox using xcompmgr.

It used to be an issue to have composite effects with fluxbox.  Not anymore.

The program xcompmgr handles many different composite effects concerning transparency and fading, and does so very well with fluxbox on my computer.

It should be noted that I am using an Nvidia 7300 GS graphics card with a non-free driver.  My /etc/X11/xorg.conf settings for my nvidia card are at the bottom of this guide.  Nvidia users may wish to check their /etc/X11/xorg.conf to make sure composite is enabled before going any further.

I do not know if xcompmgr will work for you with a different card.  I would appreciate input from people with ATI and Intel cards as to the settings they use that allow xcompmgr to work with their graphics cards.

The only issue I have found so far with xcompmgr is that artifacts are left behind when resizing windows.  Easy enough to drag the window over those parts to make them disappear.  Moving windows around however, hasn’t presented any problems whatsoever.

Nothing difficult here.  For experienced users, just telling you that xcompmgr works now with nvidia cards and probably others, would have been enough.  For inexperienced users, or for those who like lazy copy and paste guides, continue below;)

Fluxbox with xcompmgr enabled.

Fluxbox with xcompmgr enabled.

Step 1. In a terminal as root:  apt-get update && apt-get install xcompmgr

Step 2a. Xcompmgr intregrates very well with fluxbox, allowing you to set the ‘alpha’ level with the fluxbox controls.

In order for xcompmgr to function, ‘force-psuedo-transparency’ must be turned off.  You can find the switch for this by looking in ‘configuration’ In the fluxbox menu.

Look at the screenshot (in the link above)for a menu guide on where to go and the settings I am using.  You can also change this setting by going to ~/.fluxbox/init and changing the option there.
Either way, the goal is to turn it off, as xcompmgr will be taking over.

Step 2b.  While you are there, you may wish to set an initial transparency level for your windows and menu.

Step 3.  Open a terminal and enter ‘xcompmgr -h‘  Listed are all of the commands you can use with xcompmgr.  This step keeps me from having to explain the options I have listed below, and familiarizes you with xcompmgr.

Step 4.  Check to see how xcompmgr works with your settings.  Open a terminal and enter: xcompmgr -c This keeps things basic, and allows you to kill xcompmgr easily if things go wrong.

After this, if everything works okay on your system after starting xcompmgr from a terminal, you may wish to do one, or all of the following.

Add lines to start and kill xcompmgr from your keyboard Edit ~/.fluxbox/keys and add:
##### xcompmgr #####
Mod1 v :Exec killall xcompmgr
Mod1 c :Exec xcompmgr -c
## Mod1 c :Exec xcompmgr -fF -I-.004 -O-.004 -D2 -cC -t-4 -l-6 -r6

The line that is commented out is my personal setting.  Try it if you wish by commenting out the other ‘mod1 c’ line and uncommenting the longer version.  As shown, Typing ‘alt’ + ‘v’ will killall xcompmgr, while ‘alt’ + ‘c’ enables it.  Make sure to check for key conflicts.

and/or . .

Add a toggle to your menu to start/stop desktop effects.

Here is the menu entry to add to your custom ~/.fluxbox menu. If you are using ‘menu1’ from the wiki for your custom menu, you may wish to place the line below with the rest of the ‘toggles’.

Code:
[ToggleCmd {Exec xcompmgr -c} {Exec pkill xcompmgr}] (Toggle Effects)

and/or

Add an entry to have xcompmgr startup when fluxbox does.

Here is the code to place in ~/.fluxbox/startup

###### xcompmgr #######
xcompmgr -c &
#xcompmgr -fF -I-.004 -O-.004 -D2 -cC -t-4 -l-6 -r6 &

Both examples are shown. Uncomment whichever suits, or make your own.

Here are the relevent portion of the options I have enabled in my /etc/X11/xorg.conf.  I believe some of these options may be obsolete by now as Nvidia and xorg are both changing rapidly, and enable a lot of options by default that not too long ago had to be added.  Anyway . . .

Section "Device"
Identifier "Device 0"
Driver    "nvidia"
Option    "IgnoreDisplayDevices"       "TV"
Option      "Coolbits"                "1"
Option      "AddARGBGLXVisuals"     "true"
Option      "TripleBuffer"    "false"

##### For composite use… #####
Option     “DamageEvents”           “1”
Option     “AllowGLXWithComposite”  “1”
Option     “RenderAccel”            “1”

BoardName  “nVidia Corporation G71 [GeForce 7300 GS]”

Section “Extensions”
Option      “Composite”    “enable”
EndSection

Again, please post xorg settings for those users that have intel or ati cards concerning good composite options.  Thank you.

Enjoy;)

One comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s