Gentoo Wiki



Tips and Tricks

Custom Themes

There are a few custom themes floating around but no good resource since Compiz uses compiled themes.

Feel free to take a look at nvrpunk's Darkslide theme (which includes it's source) here:

Get it here

Compiz-Quinnstorm Themes

Users using the compiz-quinnstorm ebuild can use Custom Gnome Window Decorator and GCompiz Themer to change their window decorations. Simply emerge cgwd and gcompizthemer. Note that gcompizthemer-themes should also get installed as a dependency. Finally, change gnome-window-decorator to cgwd in your startup scripts.

As of cgwd 0.30 you don't need gcompizthemer(-themes) anymore, it's included in cgwd now. Old themes don't work with >=cgwd-0.30, you need updated versions. Note: do not use gnome-window-decorator, switch to cgwd to get all new features.

Movies and xscreensaver on desktop using xwinwrap

This is what David R. used to play screensavers and movies on his background in that video.

CoffeeBuzz's overlay as of revision 75 contains an ebuild for xwinwrap. Emerge it and once installed try out:

xwinwrap -ni -argb -fs -s -st -sp -a -nf -- /usr/lib/misc/xscreensaver/glmatrix -root -window-id WID 

or for movies:

xwinwrap -ni -o 0.6 -fs -s -st -sp -b -nf -- mplayer -wid WID -quiet movie.mpg 

Play around with the settings. Post neat tricks to


As of compiz 20060314, opacity is built in. Alt-mousewheel to use.

Other possibilities include using transset-df and xbindkeys. Refer to the Xorg X11 transparency page. This allows you to use Ctrl+Wheel to change the transparency of the current window.

See also the homebrew opacity changer plugin for Compiz. (Breaks compiz >=20060314).

Doing important stuff

If you have important applications that you need and shouldn't die (eg burning with k3b) while playing around with xgl, consider using them in a local vnc server. For console apps, screen is your friend =)

If you need to use an app that doesn't work well in xgl (eg some java apps have an empty window for me) you can use Xnest which is like the windowed xgl, only the other way around =)

Here's an example usage for LimeWire:

Xnest :1 & DISPLAY=":1" limewire

Remote login session with KDM

If you need to be able to select the window manager when you remotely login or simply want to be able to disable it from KDM. Follow the How-To XGL for KDM.

Then create an alternative xsession :

cp /usr/share/xsessions/kde-3.5.desktop /usr/share/xsessions/kde-3.5-kwin.desktop

Edit it :

nano /usr/share/xsessions/kde-3.5-kwin.desktop

Give it a friendly name :

Name=KDE 3.5 with kwin only

Alter compiz-decorator :

nano /usr/local/bin/compiz-decorator

And make it switch depending on the session you have selected :

if [ "$DESKTOP_SESSION" = "kde-3.5-kwin" ]; then
  kwin &
  compiz --replace dbus csm &
  sleep 1
  cgwd &

--Gbin 09:09, 28 September 2006 (UTC)

Alt+tab limited to the current workspace

The compiz ebuild in CoffeeBuzz's overlay contains a USE flag, "switch_all_desktops" that enables a gconf option in the switcher plugin which toggles whether apps from the current workspace or ALL workspaces appear in the switcher. After emerging and loading compiz, don't forget to activate the patch by changing the following gconf key:


Alternatively, you can apply this patch, by Tiago Sousa, to only switch between the windows of the current workspace. Then Bartosz Taudul enhanced it with the ability to turn it on or off through a gconf key.

check out settings for switcher from Compiz:

Keybinding to start switcher with windows from all desktops, Ctrl + Alt + Tab by default

Terminal with real transparent background

Only gnome-terminal 2.16.x supports this feature. For gnome-terminal, it works out of the box, there is no configuration required, it uses the same parms as pseudo transparency.

This is not the same effect as with transset-df; the point is to have a real transparent background, with the frame and text remaining normal. It's pseudo-transparency done right.

See Rxvt-unicode for notes on transparency with URxvt.

Running Xgl and Compiz on multiheaded displays

All the information here.

Experimental patch for r200

David Airlied posted this patch on irc. It might increase your performance using an r200 card and the open source drivers. Beware you are on your own if your trying this. Get it here. This patch is automatically applied in both overlay's. If you experience problems, try disabling it.

Anti-aliasing & Anisotropic Filtering for Nvidia users

Using the nvidia drivers, it is possible to enable anti aliasing and anisotropic filtering. Your mileage may vary. My setup (Debian, GeForce 6600 GT) was able to do anisotropic filtering, but anti-aliasing caused lots of random flickering and other glitches.

Check the driver readme for examples for your card.

This would set 4x AA and 8X AF on a GeForce 6600 GT:

export __GL_FSAA_MODE="5"
export __GL_LOG_MAX_ANISO="3"
startx (or /etc/init.d/gdm start)

Running apps that require 3D rendering acceleration (games, etc.)

As for now no 3D games can be run in XGL with hardware acceleration. This can be easily helped by running them in a separate X server. An easy way to do this is to use xgame. It's already in portage tree (games-util/xgame-gtk2 and games-util/xgame).

This is not true for me. if you run it windowed (I run Warcraft/coo in a full screen window @ 1600x1200 and it just takes a side of the cube.) your milage will vary due to the system in use. You even get media keys this way. you may need to be using nvidia-drivers/X for this to work ~Mordjah

Note: to users using the X font server: only one X server can be connected to it at any given time. Make a separate xorg.conf for the additional "gaming" X server (xgame supports using a different configuration file for the new server) which uses font paths instead.
Note: after adding a game/program to xgame you need to restart it before being able to run that game/program.

Or if you don't want to emerge xgame you can use this command:

xinit /usr/bin/game -- :2

It just starts /usr/bin/game on another display.

Or, If you want more than what xgame(and this last command) can give you, you might want to read this Tips&Tricks: Using xlaunch Among other things, xlaunch can load your Xdefaults/Xressources, set differents stuff with xset (eg: configure your mouse sensitivity..).But it can also load the xbindkeys daemon, so your multimedia keys are available while you're playing.

if you don't want to read the full thread, then grab xlaunch here, chmod it, and run

xlaunch --help

To see how to use it(but you may miss some interesting features), --truc

But.. Remember that at this time Xgl runs on another Xorg server (that usually is :93, but can be another too...) So you can safetly start applications on :93, when they're not supported by Xgl.

for ATI - use DISPLAY=":0" insted DISPLAY=":93". More look at this and this. This method worked on ATI X1600 Pro with ati-drivers 8.27.10

Just remember three things:

  1. Start Xgl with the -xorgAc parameter. This will allow network access (but also remember that this can be unsafe in a non-local network)
  2. Find the Xorg server. I've done some helper scripts: you can find them here. Look the "mplayer" wrapper script included to see usage.
  3. You can also run a window manager in the host Xorg server. The best ones i found are KWin and WindowMaker: this because with these window managers you can set the Xgl window as borderless.

If you just want to play ppracer or watch a screensaver, I found that enabling


can noticably improve performance. Not entirely sure whether it will provide direct rendering and all the benefits of the approach above, but I was able to run ppracer at 1280x1024 without any noticable difference from the seperate Xorg server approach.

CGWD,compiz-quinnstorm,dbus, and live theming

To get cgwd,compiz-quinnstorm, and live theming with gcompizthemer(no need to run cgwd --replace everytime) you have to do a few things differntly then whats in the wiki. First you must start dbus

/etc/init.d/dbus start
rc-update add dbus default

This will both start dbus and start it when you reboot automatically. Next, change your compiz and cgwd startup script and remove dbus so it looks something like this:

compiz --replace gconf &
cgwd --replace

The final step is to tell your login manager to launch the script using dbus-launch. KDE users add KDEWM=dbus-launch <your compiz script> to /etc/env.d/99kde-env. You can then dbus-launch gcompizthemer and have live theming support :)

Tip: HowTo update overlay after branch changes

The testing overlay has now moved to trunk, and the old trunk has been updated to be a replica of the testing branch. The testing branch will be removed soon. Please upgrade as soon as possible. The following was copied from the Gentoo Forums. It contains a more detailed description of the change:

Quote: The CoffeeBuzz Xgl Overlay has now had a major update. Testing has now moved to trunk. In the coming week or so, the testing branch will completely be deleted. To update, please do the following:

Remove all old xgl-coffee overlays: (There have been many paths chosen, and I will update the wiki to use a single and appropriate one. — /usr/local/overlays is generally used in Gentoo for overlays other then the local portage)

cd /usr/local/overlays
svn co xgl-coffee

Edit /etc/make.conf to change your PORTDIR_OVERLAY to include /usr/local/overlays/xgl-coffee and remove the old references for the old overlay

You are now up to date. You can update the overlay by doing:

cd /usr/local/overlays/xgl-coffee; ./; cd

If anyone finds and bugs in this announcement in regards to the update process, please inform me and I will correct it immediately.

Your friendly CoffeeBuzz Maintainer, nesl247 -- Alex Heck

Retrieved from ""

Last modified: Sat, 13 Sep 2008 05:37:00 +0000 Hits: 32,802