Quote Originally Posted by Niccola View Post
I've found the solution!!!!!!


It's not necessary the mesa-dri-experimental package to solve the problem.
I've found a weird thing done by AMD fglrx driver during installation, but to make sure it'll work, let's verify if you have the same diagnostic:
First thing is about glxinfo, if it show no direct rendering, just execute this command:
Code:
 LIBGL_DEBUG=verbose; glxinfo
the first output lines, if appears a lot of 'libGL errors' like below:

libGL error: dlopen /usr/lib32/fglrx/dri/swrast_dri.so failed
libGL error: dlopen /usr/lib32/fglrx/dri/i915_dri.so failed

if you saw, there's an i915 dri driver that couldn't be loaded for some reason. As you can see, the directory is /usr/lib32/fglrx/dri/ but, if you ls this directory you will not see more than one driver named
fglrx_dri.so
So, I've figured out that when fglrx driver installs it changes the LIBGL_DRIVERS_PATH to its own particular path, such that is: /usr/lib/fglrx/dri:/usr/lib32/fglrx/dri
if you write the command below you'll see the output like above:
Code:
 echo $LIBGL_DRIVERS_PATH

the output will be something like that: /usr/lib/fglrx/dri:/usr/lib32/fglrx/dri

if you have the same output as above you just have to add the directory where is the intel dri drivers, lets do that!

as you can see in this file : /etc/X11/Xsession.d/10fglrx

Code:
$ gksu gedit /etc/X11/Xsession.d/10fglrx

Code:
 
 if [ `uname -m` = 'x86_64' ]; then  
   if [ -d /usr/lib32/fglrx/dri ]; then  
     LIBGL_DRIVERS_PATH=${LIBGL_DRIVERS_PATH}:/usr/lib32/fglrx/dri
     if [ ! -z $LD_LIBRARY_PATH ]; then  
     LD_LIBRARY_PATH=$LD_LIBRARY_PATH:  
     fi  
     LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/lib32  
     export LD_LIBRARY_PATH  
   fi  
 fi  
 export LIBGL_DRIVERS_PATH 
in the fourth line you have the LIBGL_DRIVERS_PATH defined as: /usr/lib/fglrx/dri:/usr/lib32/fglrx/dri
if you have the same as above, just add the following path in that fourth line:

for x86_64 (64 bits): /usr/lib/x86_64-linux-gnu/dri/

for x86 (32 bits) linux: /usr/lib32/dri/

just add is with a “:” (without quotes) in the end of 4th line and put the path above of your respective system to get the direct render working!
The file will be like this:
File /etc/X11/Xsession.d/10fglrx for 64 bits (x86_64) linux:
Code:
 LIBGL_DRIVERS_PATH=/usr/lib/fglrx/dri  
 if [ `uname -m` = 'x86_64' ]; then  
   if [ -d /usr/lib32/fglrx/dri ]; then  
     LIBGL_DRIVERS_PATH=${LIBGL_DRIVERS_PATH}:/usr/lib32/fglrx/dri:/usr/lib/x86_64-linux-gnu/dri  
     if [ ! -z $LD_LIBRARY_PATH ]; then  
     LD_LIBRARY_PATH=$LD_LIBRARY_PATH:  
     fi  
     LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/lib32  
     export LD_LIBRARY_PATH  
   fi  
 fi  
 export LIBGL_DRIVERS_PATH
File /etc/X11/Xsession.d/10fglrx for 32 bits (x86) linux:
Code:
 LIBGL_DRIVERS_PATH=/usr/lib/fglrx/dri  
 if [ `uname -m` = 'x86_64' ]; then  
   if [ -d /usr/lib32/fglrx/dri ]; then  
     LIBGL_DRIVERS_PATH=${LIBGL_DRIVERS_PATH}:/usr/lib32/fglrx/dri://usr/lib32/dri
     if [ ! -z $LD_LIBRARY_PATH ]; then  
     LD_LIBRARY_PATH=$LD_LIBRARY_PATH:  
     fi  
     LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/lib32  
     export LD_LIBRARY_PATH  
   fi  
 fi  
 export LIBGL_DRIVERS_PATH
then save the /etc/X11/Xsession.d/10fglrx (must have root privileges) and reboot your system

then glxinfo | egrep render
and check it out if you'll have direct rendering!
Voilà! Shaazaam! Works

I've got gnome-shell loading and working sweeeeeeeeeetly without video tearing!!! XBMC also are working sweeeeetly and without video tearing! Good bye cruel World!!!!

Can someone tell me if Unity 3D works?
You're great!!!!
I have a dv6 6178sl with radeon 6770m and I was struggling with this problem since I installed ubuntu on this laptop. I can confirm that by doing what you've described I'm able to run unity3d with the integrated graphic using catalyst 12.3 on ubuntu 12.04 beta2.
Thanks again