Compiz Troubleshooting

From ArchWiki

Jump to: navigation, search
i18n
English
简体中文

Contents

KDE fallback

If you are using KDE and something is not right, for example you don’t see borders for your window, you can switch back to kwin with this command:

 kwin --replace

GNOME fallback

If you are using GNOME and something is not right, for example you don’t see borders for your window, you can switch back to metacity with this command:

metacity --replace

Missing GLX_EXT_texture_from_pixmaps when trying to run Compiz Fusion on ATI

First solution

http://bbs.archlinux.org/viewtopic.php?id=50073 If you run into the following error when trying to run Compiz Fusion on an ATI card:

Missing GLX_EXT_texture_from_pixmap

This is because Compiz Fusion's binary was compiled against Mesa's OpenGL library rather than ATI's OpenGL library (which is what you are using). Re-install libgl-dri (yes you will have to uninstall fglrx temporarily) to get Mesa's OpenGL library.

copy the library into a directory to keep it because ATI's drivers will over write it.

mkdir /lib/mesa
cp /usr/lib/libGL.so.1.2 /lib/mesa

Once you have it copied, you can reinstall your fglrx drivers (It should have been removed when you installed libgl-dri). Now you can start Compiz Fusion using the following example syntax:

LD_PRELOAD=/lib/mesa/libGL.so.1.2 compiz --replace &

Second solution

An other problem could arise with GLX_EXT_texture_from_pixmap, it is possible that the card could only render it indirectly, then you have to pass the option to your libgl like that :

 LIBGL_ALWAYS_INDIRECT=1 compiz --replace ccp &

(Workaround tested on the following card : ATI Technologies Inc Radeon R250 [Mobility FireGL 9000] (rev 02))


Missing GLX_EXT_texture_from_pixmaps when trying to run Compiz Fusion on Intel chip

First off, check that you're using the intel driver as opposed to i810. Then, run the following command to run compiz (must use this every time.).

LIBGL_ALWAYS_INDIRECT=true compiz --replace --sm-disable ccp &

If you then don't have borders, run

emerald --replace

As at 17-Oct-07 the Compiz-Fusion Wiki states: "If you are using an Intel GMA card with AIGLX, you will need to start Compiz Fusion with LIBGL_ALWAYS_INDIRECT=1 appended."

Fusion-Icon showing up as red "X" in status bar, icon missing in menus

The GTK icon cache needs to be refreshed (hopefully this will be added in the .install file of the package). Run the following command:

# gtk-update-icon-cache -f /usr/share/icons/hicolor

if this fails try installing the package hicolor-icon-theme:

# pacman -S hicolor-icon-theme

Fixed with new community package.

Compiz starts, but no effects are visible

If you have installed compiz-decorator-gtk: Check if GConf schema was correctly installed:

 gconftool-2 -R /apps/compiz/plugins | grep plugins

make sure that all plugins are listed (not only fade!). If not, try to install compiz schema manually (do this as normal user, not as root!!!):

 gconftool-2 --install-schema-file=/usr/share/gconf/schemas/compiz-decorator-gtk.schemas

Note: Compiz basic plugins are not enabled by default. You should enable "Move Window", "Resize Window", and "Window decoration" plugins in settings manager from fusion-icon to have a usable window manager.

Compiz starts, but gtk-window-decorator does not

It is a configuration problem for gconf and gconfd. I solved it by removing ".gconf" dir in my home, but I'm using KDE. If you are using Gnome you should enter your ".gconf" directory and remove all compiz keys. This will erase your compiz settings, so be sure to reconfigure. Finally exec as user:

 gconftool-2 --install-schema-file=/usr/share/gconf/schemas/compiz-decorator-gtk.schemas

Compiz appears to start, but there are no window borders

When you run fusion-icon from commandline, you get output like this:

* Detected Session: gnome
* Searching for installed applications...
* NVIDIA on Xorg detected, exporting: __GL_YIELD=NOTHING
* Using the GTK Interface
* Metacity is already running
* Setting window manager to Compiz
... executing: compiz --replace --sm-disable --ignore-desktop-hints ccp
compiz (core) - Warn: No GLXFBConfig for depth 32
compiz (core) - Warn: No GLXFBConfig for depth 32
compiz (core) - Warn: No GLXFBConfig for depth 32
compiz (core) - Warn: No GLXFBConfig for depth 32
compiz (core) - Warn: No GLXFBConfig for depth 32
compiz (core) - Warn: No GLXFBConfig for depth 32

All you need to do is edit your /etc/X11/xorg.conf and find the "Depth" directive inside the "Screen" section; change all occurences of this value to 24. This occured to me with my colour depth set to 16; but also happens when it is set to 32.


You may also try adding Option "AddARGBGLXVisuals" "True" & Option "DisableGLXRootClipping" "True" to your "Screen" section if you are using the Nvidia binary driver. (Radeon, and the open 'nv' driver will not work with this option as far as I can tell.) If you used any other Options elsewhere in xorg.conf to get compiz working and still have no luck, try commenting them out and using only the aformentioned ARGBGLXVisuals and GLXRootClipping Options.

Note: Check that "Window decoration", "Move" and "Resize" plugins are enabled with Compiz Settings Manager or gconf-editor.

With gconf-editor you can easly enable "Window decoration", "Move" and "Resize" plugins.

 $ gconf-editor

Navigate to apps/compiz/general/allscreens/options

Add/Edit "active_plugins" Key (Name: active_plugins, Type: List, List type: String).

Add "decoration", "move", and "resize" to the list.

Compiz starts and borders appear, but windows won't move

Be sure you have the "Move Window" plugin installed and enabled in the compiz settings manager.

Blank screen on resume from suspend-to-ram using the Nvidia binary drivers

If you receive a blank screen with a responsive cursor upon resume, try disabling sync to vblank:

gconftool -s /apps/compiz/general/screen0/options/sync_to_vblank-t boolean false

fusion-icon doesn't start

If you get an output like this from the command line:

[andy@andylaptop ~]$ fusion-icon
 * Detected Session: gnome
 * Searching for installed applications...
Traceback (most recent call last):
  File "/usr/bin/fusion-icon", line 57, in <module>
    from FusionIcon.interface import choose_interface
  File "/usr/lib/python2.5/site-packages/FusionIcon/interface.py", line 23, in <module>
    import start
  File "/usr/lib/python2.5/site-packages/FusionIcon/start.py", line 36, in <module>
    config.check()
  File "/usr/lib/python2.5/site-packages/FusionIcon/util.py", line 362, in check
    os.makedirs(self.config_folder)
  File "/usr/lib/python2.5/os.py", line 172, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/home/andy/.config/compiz'

the problem is with the permission on ~/.config/compiz. You have set the owner of a folder in your area as root. To change this, run (as root)

chown <username> /home/<username>/.config/compiz

Video Playback

If you can't see video playback on Compiz, change the video output to something like OpenGL. In VLC you go to Settings->Video->Output modules and tick the advanced options box.

CCSM Locale Errors

If you get locale errors when starting ccsm, make sure you have set your locale in /etc/rc.conf and in /etc/locale.gen, and then run (as root),

locale-gen

You might have to try a couple different locales for your language to get it to work properly.

Second option

Your second option is to fix Python 2.5 - If one of your errors points you to a line in locale.py - jot down the line number and switch user to a root account.

Open "/usr/lib/python2.5/locale.py" in the editor of your choice as your root account and surf on down to the line number you jotted down earlier (as of this writing it is 476) and change:

   return _setlocale(category, locale)

to

   return _setlocale(category, None)


Poor Performance on Intel cards

Obsolete Current Intel drivers no longer support XAA. Try UXA instead (modeline should be activated from boot though).

This works on the Intel 945GM, but has not been tested on other Intel cards. For smooth compositing effects you will need to add these lines into your Device section:

Option      "DRI"                    "True"
Option      "NoDDC"                  "True"
Option      "XAANoOffscreenPixmaps"  "True"
Option      "EnablePageFlip"         "True"
Option      "RenderAccel"            "True"
Option      "AccelMethod"            "XAA"

And ensure that you have the following somewhere:

Section "Extensions"
   Option "Composite" "Enable"
EndSection

Choppy animations, even though everything configured correctly

If everything is configured correctly but you still have poor performance on some effects, try disabling CCSM->General Options->Display Settings->"Detect Refresh Rate" and instead choose a value manually. Tested on both nvidia and intel chips. Can work wonders.

Alternatively, if your chip is nvidia and you are experiencing an inadequate refresh rate with "Detect Refresh Rate" enabled in Compiz, it's likely due to an option called DynamicTwinView being enabled by default which plays a factor in accurately reporting the maximum refresh rate that your card and display support. You can disable DynamicTwinView by adding the following line to the "Device" or "Screen" section of your xorg.conf file, and then restarting your computer:

Option "DynamicTwinView" "False"

Doing so will allow XrandR to accurately report the refresh rate to anything that detects it, including Compiz. You should be able to leave "Detect Refresh Rate" enabled and get excellent performance. Once again, this only applies to nvidia chips.

Fix Gnome Screenshot

To re-enable gnome-screenshot (the default behavior caused by hitting PrtScn) simply go to Settings Manager>Commands and map 'gnome-screenshot' to the 'PrtScn' key. This is advantageous because you can also use the Compiz-Fusion 'Screenshot' plugin at the same time since the action that enables it is <Super>Button1 thereby giving you two methods to do a screen capture (one of which gives a full screen capture in a single keystroke).

Get GNOME Workspace Switcher work with Compiz-Fusion

In older versions of Compiz, the Gnome Workspace Switcher applet would actually work with Compiz-Fusion (i.e. rotate cube/move plane etc.), but recent versions seem not to. This is due to a new feature introduced in Compiz, which allows real seperate workspaces. For example, if you have a desktop plane with four planes, and have four desktops enabled in Gnome, it sums up to a total of 16 different workspaces. Currently, there is no animation associated with "real" workspace changing. To get the Workspace Switcher work, do the following:

In GConf, set the following options:

/apps/compiz/general/screen0/options/number_of_desktops = 1
/apps/compiz/general/screen0/options/hsize = 4 (this is an example)
/apps/compiz/general/screen0/options/vsize = 1 (this is an example)

Slow resizing of windows with compiz/emerald and ATI videocards

I was surprised to see that ATI has a poor performance when resizing windows in emerald. I googled around and found out that the problem is with the normal setting in the resize window plugin. To fix this simple change the "Default Resize Mode" setting in the plugin settings to anything other than Normal then, you'll resize windows quickly again.

Brief explanations about the resize options:

Rectangle: Renders a rectangle that represents the new size of the window while resizing. The window is resized after you stop dragging. While resizing, the window is still visible in the background at the original size.

Outline: Same as the rectangle mode but there is an outline instead of a filled rectangle.

Stretch: The window is stretched to the size of the dragging rectangle and doesn't actually repaint until you are finished dragging.

Personal tools