Compiz

Compiz is an OpenGL window and compositing manager and a set of plugins for it. The latest stable version is 0.8.6. Live ebuilds can be found in desktop-effects overlay and are numbered 9999.

Prerequisites
Compiz requires a driver supporting 3D acceleration and AIGLX. Please refer to the graphics drivers article for more information.

Keywords
Currently (version 0.8.6) Compiz and most of its dependencies are considered unstable and are therefore masked in Portage. Add the following lines to to unmask:

Note:

and are only required if you wish to use Compiz with either GNOME or KDE.

USE Flags
The following packages need to be emerged with certain USE flags:
 * and with  enabled
 * with and  enabled
 * with enabled.

To set the USE flags specified above, add the following lines to :

If you use GNOME or KDE, you should also add the corresponding USE flag ( or ) to:

As reported in bug #272968, the useflag has been deprecated so it is not necessary anymore in order to have a working compiz. Furthermore, that useflag will cause your GTK+ applications to introduce RAM overhead that's completely pointless and unnecessary.

See the offical Gentoo documentation on USE flags if further help is required.

Emerge
Compiz can now be emerged with the following command:

Usage
To start Compiz manually, run in a terminal (root privileges are not required):

Compiz versions earlier than 0.7.8 are manually started with :

Note:

When starting Compiz for the first time, you may experience missing window decorations and a general loss of basic features like resizing or moving windows. This is not a malfunction - you just need to enable the corresponding plugins using the CompizConfig Settings Manager (CCSM). There, you will also find the eye-candy settings (e.g. the desktop cube). By default, all plugins are disabled.

In GNOME, the CCSM is located under System -> Preferences.

Radeon r600/r700
Compiz must be started with indirect rendering:

KDE3
To make a KDE3 session autostart Compiz create a symlink from KDE3's Autostart directory to as shown below:

KDE Plasma Workspaces 4.x
In 4.2+ the easiest way to autostart Compiz is to create a somewhere in the  of the user which wishes to use it, like so:

or you could just create a symlink from your compiz startup file to it.

Then simply select it from System Settings/Default Applications/Window Manager. Select the Compiz custom option.

Gnome
To change the default window manager in gnome run gconf-editor, and set /desktop/gnome/session/required_components/windowmanager to "compiz" Alternatively compiz can be added to the list of applications which will start at login (Note, that this will start metacity first and then replace with Compiz.)

Navigate to System > Preferences > Startup Applications

Add a new Program to the session list named Compiz and path

Add a new Program to the session list named Emerald and in command "emerald --replace"

Save the settings and relog to test.

If you still can't get Compiz and Emerald to start at login, try setting emerging x11-apps/fusion-icon and setting "fusion-icon" instead of "compiz" in gconf-editor (see above).

Xfce4
Create the following script in your home directory.

Don't forget to set permissions :

Then, add it to be autostarted via Settings->Session and Startup->Application Autostart.

How to create a bash file.

Missing Utility Functions
Compiz-manager depends on xdpyinfo to detect information about the graphics system.

No window borders
Check the "Window decorations" option.

Redrawing Issues
If windows fail to redraw unless certain actions are taken (these seem to include: moving the window, scrolling the window, clicking the title bar, and changing the transparency, among other things), and you are using the proprietary nvidia driver, try the following: Get the source for compiz-plugins-main from http://releases.compiz.org/0.8.2/compiz-plugins-main-0.8.2.tar.bz2 and extract it to a new directory. Edit to look like the following near line 191:

Note: As of compiz-plugins-main-0.8.4, this is alteration is already in place. static void workaroundsPaintScreen (CompScreen *s,                        CompOutput   *outputs,                        int          numOutputs,                        unsigned int mask) {      WORKAROUNDS_SCREEN (s);

currentScreen = s;

if (workaroundsGetForceGlxSync (s->display)) glXWaitX ;

UNWRAP (ws, s, paintScreen); (*s->paintScreen) (s, outputs, numOutputs, mask); WRAP (ws, s, paintScreen, workaroundsPaintScreen); } Compile and install: Then restart Compiz. Enable the Workarounds plugin in, and check the box for Force synchronization between X and GLX, and hope everything works. Test whether you are still experiencing the redraw issue by going to the General page in and flipping back and forth between the Key Bindings tab and any other tab, as this seems to provoke the issue if it is present. This patch was created by user Maniac103 of nvnews.net forums.

Note that for Intel GMA users, this workaround may cause the exact issue it prevents for nVidia users. Non-nVidia users should leave this workaround unchecked, and verify that it is unchecked if this problem presents itself. Compiz-Fusion

Wrong ABI Version
You may run into the following: user@user ~ $ compiz-manager /usr/local/bin/compiz-manager: line 131: xvinfo: command not found Writing configuration to: /home/user/.config/compiz-managerrc compiz (core) - Error: Can't load plugin 'ccp' because it is built for ABI version 20070425 and actual version is 20070706 compiz (core) - Error: Couldn't activate plugin 'ccp'

You will need to unemerge and re-emerge all the packages mentioned in the guide. The key package that needs to be updated may just be.

Refresh Problem for Nvidia Users
Some users found there were screen refresh problems by default setting. Here is a trick if you would like to run compiz-manager. Edit the file /usr/bin/compiz-manager, and find the function named build_args, remove the --loose-binding parameter for the COMPIZ_OPTIONS command. build_args {	if [ $INDIRECT = "yes" ]; then COMPIZ_OPTIONS="$COMPIZ_OPTIONS --indirect-rendering " fi if check_nvidia; then #COMPIZ_OPTIONS="$COMPIZ_OPTIONS --loose-binding" COMPIZ_OPTIONS="$COMPIZ_OPTIONS" fi } Try to restart compiz-manager to make yourself lucky.

Use KDE4 decorator instead of Emerald
Edit the file /usr/bin/compiz-manager. If you have emerald use flag then replace USE_EMERALD="yes" with USE_EMERALD="no". And you need to replace all kde-window-decorator to kde4-window-decorator

KDE 4.x (latest) segfaults with kde4-window-decorator
May be it's simply to workaround that problem by using emarald decorator with exactly analogue theme like KDE. For example, Emerald KDE Oxygen => http://compiz-themes.org