Compiz Fusion

De Guía Ubuntu
Saltar a: navegación, buscar


XGL es un entorno gráfico para GNU-linux, que combinado con el manejador de ventanas Compiz permite tener efectos increibles en tu escritorio.

Nota clasica.png XGL-compiz es software sujeto a un fuerte proceso de desarrollo. Esto implica una bastante inestabilidad y debido a la constante innovación y cambios que se producen en este software de manera DIARIA es muy recomendable estar al tanto de los cambios, ya que en ocasiones se puede romper completamente la compatibilidad entre una versión y otra.

Antes de nada indicar que para tener XGL+Compiz en nuestra Ubuntu hay que seguir 3 pasos básicos, que son: Activar la aceleración 3D, instalar XGL e instalar Compiz. A continuación se describe el proceso completo.

Escritorio con XGL y compiz

Activar la aceleración 3D

Para ello, y dependiendo de nuestra tarjeta gráfica, el proceso es distinto; lo primero será instalar los drivers específicos.

Tarjetas soportadas por Xgl y compiz

En este enlace podréis ver una lista completa de las tarjetas soportadas

NVIDIA

Asegurate que tengas instalados lo siguiente:

$ sudo aptitude install linux-restricted-modules-$(uname -r)

Instalamos los drivers

$ sudo aptitude install nvidia-glx

Editamos el xorg.conf

$ sudo gedit /etc/X11/xorg.conf

En la sección "Module", comentamos los módulos "GLcore" y "dri" (si están en la lista) y añadimos el módulos "glx"

Section "Module"
#       Load    "GLcore"
        Load    "bitmap"
        Load    "ddc"
#       Load    "dri"
        Load    "extmod"
        Load    "freetype"
        Load    "glx"
        Load    "int10"
        Load    "type1"
        Load    "vbe"
EndSection 

En la sección "Device" cambiamos el driver a "nvidia"

Section "Device"
        Identifier      "NVIDIA GeForce FX 5200"
        Driver          "nvidia"
EndSection

Ahora viene un paso esencial y que me ha dado muchos quebraderos de cabeza. En la sección "Screen" cambiamos la profundidad de color por defecto a 24, esto es DefaultDepth 24:

Section "Screen"
	Identifier	"Default Screen"
	Device		"NVIDIA Corporation NVIDIA Default Card"
	Monitor		"Monitor genérico"
	DefaultDepth	24
EndSection

Si no haces esto, verás que al finalizar todo el proceso y pruebes si te funciona, la pantalla no se refrescará bien y producirá "manchas" en el escritorio. Además, el sistema irá muy lento.

ATI o tarjetas Intel

Descargamos el driver

$ wget http://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-8.28.8.run

Instalamos las herramientas necesarias:

$ sudo apt-get update
$ sudo apt-get install module-assistant build-essential 
$ sudo apt-get install fakeroot dh-make debconf libstdc++5 linux-headers-$(uname -r)

Creamos los paquetes .deb

$ bash ati-driver-installer-8.28.8.run --buildpkg Ubuntu/dapper

Instalamos los paquetes .deb

$ sudo dpkg -i xorg-driver-fglrx_8.28.8-1_i386.deb
$ sudo dpkg -i fglrx-kernel-source_8.28.8-1_i386.deb
$ sudo dpkg -i fglrx-control_8.28.8-1_i386.deb

Eliminamos cualquier paquete fglrx deb antiguo de /usr/src/

$ sudo rm /usr/src/fglrx-kernel*.deb

Compilamos el módulo kernel

$ sudo module-assistant prepare
$ sudo module-assistant update
$ sudo module-assistant build fglrx
$ sudo module-assistant install fglrx
$ sudo depmod -a
Nota clasica.png Debemos repetir todo el proceso cada vez que se actualize el kernel.

Activamos un par de opciones

$ sudo aticonfig --initial
$ sudo aticonfig --overlay-type=Xv

Reiniciamos (no es estrictamente necesario pero si aconsejable)

$ sudo shutdown -r now
Nota clasica.png Hay un artículo más extenso en Aceleración gráfica en Ubuntu.
Nota clasica.png En la discusión de esta página se habla de un posible bug de ATI y de cómo corregirlo.

Instalando XGL

Repositorios

Los paquetes que proporcionan este sistema de escritorio no se encuentran en los repositorios oficiales de ubuntu por lo que debemos seguir estos pasos:

1- Activar los repositorios universe y multiverse

2- Editar el archivo sources.list para añadir reposistorios extra:

Abre una terminal y escribe:

sudo gedit /etc/apt/sources.list

en el final del documento introducimos las siguientes lineas:

deb http://www.beerorkid.com/compiz dapper main
deb http://xgl.compiz.info/ dapper main
deb-src http://xgl.compiz.info/ dapper main
  1. Repositorios extra recomendados por beerorkid.com por si falla alguno anterior
deb http://media.blutkind.org/xgl/ dapper main
deb http://compiz-mirror.lupine.me.uk/ dapper main
deb http://ubuntu.compiz.net/ dapper main

Guardamos y cerramos el archivo.

Voliendo a la terminal añadimos las claves de todos los repositorios:

wget http://www.beerorkid.com/compiz/quinn.key.asc -O - | sudo apt-key add -
wget http://media.blutkind.org/xgl/quinn.key.asc -O - | sudo apt-key add -
wget http://compiz-mirror.lupine.me.uk/quinn.key.asc -O - | sudo apt-key add -
wget http://ubuntu.compiz.net/quinn.key.asc -O - | sudo apt-key add -

Actualizamos lista de paquetes y actualizamos:

sudo aptitude update && sudo aptitude upgrade && sudo aptitude dist-upgrade

Instalamos el paquete

$ sudo aptitude install xserver-xgl

Creamos una sesión para XGL

Ahora vamos a crear una sesión independiente para XGL para que de este modo podamos elegirla al arrancar en "Opciones - Sesiones"

Abrimos un terminal y creamos un archivo llamado startxgl.sh

$ sudo gedit /usr/bin/startxgl.sh

Nvidia

Escribimos en el archivo lo siguiente:

#!/bin/bash
Xgl -fullscreen :0 -ac -br -accel glx:pbuffer -accel xv:fbo & sleep 2 && DISPLAY=:0 gnome-session

Salvamos y cerramos el editor.

Nota: En caso de que no funcione probad poniendo estos datos en lugar de los anteriores:

#!/bin/bash
Xgl -fullscreen :1 -ac -br -accel glx:pbuffer -accel xv:fbo & sleep 2 && DISPLAY=:1 gnome-session

Ahora daremos permisos de ejecución al archivo

$ sudo chmod 755 /usr/bin/startxgl.sh

ATI o Intel

Escribimos en el archivo lo siguiente:

#!/bin/bash
Xgl -fullscreen :1 -ac -accel glx:pbuffer -accel xv:pbuffer & sleep 2 && DISPLAY=:1 gnome-session

Salvamos y cerramos el editor.

Ahora daremos permisos de ejecución al archivo

$ sudo chmod 755 /usr/bin/startxgl.sh

Opción en el menú sesiones

Esto es común para todas las tarjetas.

Añadiremos la opción en el menú de sesiones creado el siguiente archivo

$ sudo gedit /usr/share/xsessions/xgl.desktop 

Introducimos lo siguiente:

[Desktop Entry]
Encoding=UTF-8
Name=gnome-xgl
Exec=/usr/bin/startxgl.sh
Icon=gcompizthemer-icon.png
Type=Application

Salvamos y cerramos el editor.

Ahora reiniciamos el entorno gráfico (ctrl + alt + tecla de borrar) y en Opciones - Sesiones seleccionamos XGL e iniciamos sesión.

Instalación de Compiz

Descargaremos los paquetes básicos de Compiz:

$ sudo apt-get install compiz compiz-gnome cgwd cgwd-themes csm

Anteriormente nosotros debiamos crear el script para iniciar compiz, pero ahora este se instala automaticamente en:

/usr/bin/compiz-start

Podemos agregarlo a los scripts de inicio de sesión. Para ello nos dirigimos a “Sistema > Preferencias > Sesiones” y en la pestaña Programas al inicio pulsamos Añadir y escribimos /usr/bin/compiz-start.

Es buena idea probar que todo funcione como debe antes de agregar /usr/bin/compiz-start a los programas de inicio, solo por precaución.

En caso de tener problemas y si aparece el compiz-tray-icon y parece no funcionar nada, es necesario remover o deshabilitar el compiz-tray-icon del inicio de sesion realizar lo siguiente:

Crearemos un archivo llamado compiz.sh para que se ejecute siempre que abramos sesión con XGL

$ gedit gnome-compiz.sh

Copiamos lo siguiente:

#!/bin/bash
cgwd
compiz --replace gconf
xmodmap /usr/share/xmodmap/xmodmap.es

Guardamos, cerramos el editor y le damos permisos de ejecución

$ sudo chmod 755 gnome-compiz.sh

Ahora nos dirigimos a “Sistema > Preferencias > Sesiones” y en la pestaña Programas al inicio pulsamos Añadir y escribimos /home/tuusuario/gnome-compiz.sh (aquí sustituimos “tuusuario” por tu nombre de usuario). También puedes usar la opción examinar para localizar el archivo.

Alternativa a la instalación manual: instalacion automática

Una manera más facil para que tu XGL funcione es instalar el paquete automatix bleeder, una herramienta que automatiza todo el proceso anterior, instalándote incluso los drivers de tu tarjeta de video.

No es aconsejable para usuarios inexpertos ya que las mismas personas que proporcionan dicha herramienta la incluyen en la categoria de inestable. No por el programa en si, sino por los programas que podemos instalar por medio de ella.

automatix bleeder es de la familia de "automatix", si quieres saber más sobre esta herramienta mira en este enlace

Más información

Combinaciones de teclas (configuración teclado 105 Teclas)

La configuración de los efectos ya no se realizar ni por la aplicación gset-compiz ni por el editor de configuración ahora se utiliza la herramienta compiz-settings-mannager una nueva, pero poderosa herramienta para configurar todos los efectos visuales de XGL.

Para acceder a ella basta con escribir en una terminal el siguiente comando

$ csm

Por omisión XGL+Compiz traen unas configuraciónes de teclas predeterminadas para ejecutar los efectos:

  • Cambiar ventanas: Alt + Tab
  • Ordenar todas las ventanas en el escritorio (tipo Exposé de MacOSX) : F12 activa o desactiva; al pulsar (clic izquierdo) sobre la miniatura de una ventana, la trae al frente (wow que bonito).
  • Cambiar entre escritorios: Ctrl + Alt + Flecha izquierda/derecha
  • Cambiar entre escritorios de manera feliz: Ctrl + Alt + click izquierdo (arrastrando)
  • Cambiar entre escritorios, llevandóte la ventana activa al nuevo escritorio: Ctrl + Shift + Alt + Flecha izquierda/derecha
  • Ventana translucida/opaca: Alt + ruedecita del ratón
  • Aumentar Zoom una vez: Tecla Super + clic derecho (Super=Windows).
  • Aumentar Zoom manualmente: Tecla Super + rueda del ratón hacia arriba
  • Disminuir Zoom manualmente: Tecla Super + rueda del ratón hacia abajo
  • Mover ventana: Alt+arrastrar clic izquierdo
  • Cambiar tamaño ventana (ideal cuando los bordes no lo permiten) : Alt + clic derecho

ATI - Problemas con ATI X300

Si tienes esta tarjeta u otra ATI y XGL va realmente lento, hay que agregar ciertos pasos a los principales:

$ sudo apt-get install xorg-driver-fglrx $ sudo aticonfig --initial $ sudo aticonfig --overlay-type=Xv $ sudo modprobe agpgart $ sudo modprobe -r fglrx

Tambíen puede darse el caso de que tengas bloqueos del sistema, para resolverlo, edita tu xorg.conf y modifica la sección Device para que se vea como aqui (no olvides hacer una copia de seguridad de tu xorg.conf):

$ sudo gedit /etc/X11/xorg.conf

Section “Device”

Identifier “ATI modelo X00″

Driver “fglrx”

Option “no_accel” “no”

Option “no_dri” “no”

Option “DynamicClocks” “on”

Option “mtrr” “on”

Option “DesktopSetup” “Single”

Option “ScreenOverlap” “0″

Option “Capabilities” “0×00000000″

Option “CapabilitiesEx” “0×00000000″

Option “VideoOverlay” “on”

Option “OpenGLOverlay” “off”

Option “CenterMode” “off”

Option “PseudoColorVisuals” “off”

Option “Stereo” “off”

Option “StereoSyncEnable” “1″

Option “FSAAEnable” “no”

Option “FSAAScale” “1″

Option “FSAADisableGamma” “no”

Option “FSAACustomizeMSPos” “no”

Option “FSAAMSPosX0″ “0.000000″

Option “FSAAMSPosY0″ “0.000000″

Option “FSAAMSPosX1″ “0.000000″

Option “FSAAMSPosY1″ “0.000000″

Option “FSAAMSPosX2″ “0.000000″

Option “FSAAMSPosY2″ “0.000000″

Option “FSAAMSPosX3″ “0.000000″

Option “FSAAMSPosY3″ “0.000000″

Option “FSAAMSPosX4″ “0.000000″

Option “FSAAMSPosY4″ “0.000000″

Option “FSAAMSPosX5″ “0.000000″

Option “FSAAMSPosY5″ “0.000000″

Option “UseFastTLS” “0″

Option “BlockSignalsOnLock” “on”

Option “UseInternalAGPGART” “no”

Option “ForceGenericCPU” “no”

Option “KernelModuleParm” “agplock=0″

Option “PowerState” “1″

BusID “PCI:1:0:0″

EndSection


Con esto se arreglan todos los problemas relacionados con la lentitud y bloqueos en la serie X00 de ATI.

Añadir plugin "Opacity" a Compiz

Bien, resulta que el paquete que hay en los repositorios no tiene el plugin "Opacity" necesario para poder hacer las transparencias de las ventanas, así que habrá que añadirlo a mano. Para ello se necesita Gconf.

Lo primero, descargar compiz_opacity.tar.gz.

  • Extraemos el paquete.
  • Copiamos todos los libopacity* (libopacity.a, libopacity.la y libopacity.so) en la carpeta /usr/lib/compiz/
  • Si no tenemos Gconf, lo instalamos, abre consola y escribe "sudo aptitude install gconf". Ahora toca añadir gconf al menú aplicaciones (así estará más accesible para próximas veces). Abrimos el "Editor de Menús Alacarte" (Aplicaciones->Accesorios->Editor de menús Alacarte), y en el apartado de "Herramientas de Sistema" marcamos como visible el "Editor de Configuraciones".
  • Abrimos el Editor de Configuraciones (Aplic.->Herramientas Sist.->Edit. Conf.). Nos dirigimos a apps->compiz->general->all screens->options, y editamos la lista de plugins (clave active_plugins), añadiendo la palabra "opacity" a la lista, en último lugar.
  • Reiniciamos GDM. Volvemos a abrir Gconf. Ahora bajo la clave Apps->Compiz->Plugins ya nos debería de aparecer "opacity". Abrimos sus subclaves hasta llegar a "options". Ahí editamos las combinaciones de teclas a usar para aumentar y reducir el grado de transparencia de una ventana. Yo por ejemplo lo tengo mapeado a <Shift><Control>F1 para disminuir, y <Shift><Control>F2 para aumentar. Si especificáis "ButtonX", la X indica qué botón del ratón se va a usar, siendo Button1 el botón izquierdo, Button3 el derecho, y el central, pues Button2. La configuración que viene por defecto es para la rueda del ratón.

Enlaces de interés