Trygve Laugst?l wrote: > Hi > > I just LiveUpgraded to b87 was hoping to get Compiz running. I went > through preferences -> appearance preferences -> visual effects and > found that it couldn't enable visual effect because "Composite > extension enabled". This was a bit surprising as I get this in the > Xorg logs: > > (**) Extension "Composite" is enabled > > I just tried this on a b87 system with FX 3500 and compiz worked. The only difference is my system was a full install and yours was a LU.
Just for grins, try renaming /etc/X11/xorg.conf to disable it, restart the desktop and then try starting compiz. Also, can you compile the following code and let me know the result? $ cat compiz_query.c /* cc compiz_query.c -I/usr/X11/include -L/usr/X11/lib -lX11 -lXrender -lGL */ #include <stdlib.h> #include <stdio.h> #include <X11/Xlib.h> #include <X11/extensions/Xrender.h> #include <GL/gl.h> #include <GL/glx.h> int main(int argc, char *argv[], char *envp[]) { Display *dpy; int screen; XVisualInfo *xvi, template; int nvi; int i; Visual *visual; XRenderPictFormat *format; int attrib[] = { GLX_RENDER_TYPE, GLX_RGBA_BIT, GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT, GLX_RED_SIZE, 1, GLX_GREEN_SIZE, 1, GLX_BLUE_SIZE, 1, GLX_ALPHA_SIZE, 1, GLX_DOUBLEBUFFER, True, GLX_DEPTH_SIZE, 1, None }; GLXFBConfig *fbconfigs, fbconfig; int numfbconfigs, render_event_base, render_error_base; dpy = XOpenDisplay(NULL); if (dpy == NULL) { fprintf(stderr, "Failed to open display\n"); return (1); } screen = DefaultScreen(dpy); /* Query for RENDER */ if (!XRenderQueryExtension(dpy, &render_event_base, &render_error_base)) { fprintf(stderr, "No RENDER extension found\n"); return (1); } /* Query GLX */ fbconfigs = glXChooseFBConfig(dpy, screen, attrib, &numfbconfigs); if (!fbconfigs) { fprintf(stderr, "No suitable GLX entries found\n"); return (1); } /* * Find an FBConfig with a visual that has a RENDER picture format * with alpha */ visual = NULL; for (i=0; i<numfbconfigs; i++) { xvi = glXGetVisualFromFBConfig(dpy, fbconfigs[i]); if (!xvi) { XFree(xvi); continue; } format = XRenderFindVisualFormat(dpy, xvi->visual); if (!format) continue; if (format->type == PictTypeDirect && format->direct.alphaMask > 0) { XRenderDirectFormat *direct = &format->direct; printf("Format 0x%x\n", format); printf( " details: red shift 0x%x, mask 0x%x\n" " green shift 0x%x, mask 0x%x\n" " blue shift 0x%x, mask 0x%x\n" " alpha shift 0x%x, mask 0x%x\n", direct->red, direct->redMask, direct->green, direct->greenMask, direct->blue, direct->blueMask, direct->alpha, direct->alphaMask); visual = xvi->visual; fbconfig = fbconfigs[i]; XFree(xvi); break; } } if (visual == NULL) { fprintf(stderr, "Failed to find suitable RENDER visual\n"); return (1); } printf("Found suitable RENDER visual 0x%x(%d)\n", visual->visualid, visual->visualid); format = XRenderFindStandardFormat(dpy, PictStandardARGB32); printf("Format 0x%x\n", format); return (0); }