Diferencia entre revisiones de «Compiz Fusion»

De Guía Ubuntu
Saltar a: navegación, buscar
(Requisitos mínimos y recomendados)
(Eliminando restos de Compiz y Beryl)
Línea 65: Línea 65:
 
  sudo aptitude purge compiz compiz-core desktop-effects
 
  sudo aptitude purge compiz compiz-core desktop-effects
  
(no te preocupes cuando te pregunte si quieres eliminar ubuntu-desktop, es un meta-paquete y desinstalarlo no romperá tu sistema)
+
{{nota|No te preocupes cuando te pregunte si quieres eliminar ubuntu-desktop, es un meta-paquete y desinstalarlo no romperá tu sistema}}
  
 
Si ya habías instalado Beryl debes saber que Compiz Fusion es perfectamente compatible con él por lo que no tendrás que desinstalarlo si no quieres.
 
Si ya habías instalado Beryl debes saber que Compiz Fusion es perfectamente compatible con él por lo que no tendrás que desinstalarlo si no quieres.

Revisión de 17:23 13 ago 2007

Compiz - fusion
Compiz logo.png
 
OpenCompositing
0.4 / diciembre de 2006
 ? / ?
compiz
-
Entorno de escritorio
GPL
compiz.org

XGL es un entorno gráfico para GNU/Linux, que combinado con el manejador de ventanas Compiz Fusion permite tener efectos increíbles en el escritorio.

Una alternativa muy buena al XGL es el AIGLX, más estable y seguro, pero solo funciona con los controladores de las tarjetas gráficas libres. Nvidia trae su propio entorno, no se necesita XGL ni AIGLX aunque se hacen los mismos pasos que AIGLX (instalar driver e instalar programas).

El AIGLX viene incorporado en Ubuntu desde la versión 6.10, pero en la 7.04 tiene un mejor soporte.

Nota clasica.png Manual actualizado a 7 de agosto de 2007.
Nota idea.png Compiz Fusion es el nuevo sustituto a Beryl y Compiz. Es el resultado de la integración de ambos proyectos en uno sólo pero aun así es un software sujeto a un fuerte proceso de desarrollo.

A continuación vamos a detallar el proceso de instalación de Compiz Fusión en Ubuntu 6.10 y 7.04

Escritorio con XGL (o AIGLX) y Compiz Fusión

Requisitos mínimos y recomendados

Para hacer funcionar Compiz se deben de cumplir una serie de requisitos, si no se cumplen no es posible hacerlo funcionar.

Básicamente el principal requisito es tener activada la aceleración 3D. Si no sabes como hacerlo lee el articulo Aceleración gráfica en Ubuntu.

Un método rápido para saber si tienes aceleración gráfica es tecleando en un terminal:

glxinfo | grep direct

Si el resultado es YES tienes aceleración gráfica.

Las tarjetas sobre las que se ha conseguido funcionar son las tarjetas gráficas de ATI, NVDIA o INTEL, aun así hay gente que ejecuto Compiz Fusion medianamente bien en tarjetas Via Unichrome / Unichrome Pro.

No hay una lista del todo correcta que informe de las tarjetas compatibles pero se sabe que Compiz Fusion funciona en gráficas del nivel de ATI Radeon 7000 con apenas 32 o 64 mb y Nvidia GeForce2 de apenas 32 MB. Aunque el rendimiento es visiblemente menor.

Se recomienda usar la versión 7.04 de Ubuntu que trae mejor soporte para estas tecnologías que cualquiera de sus anteriores versiones.

La versión 6.06 de Ubuntu no esta oficialmente soportada por Compiz Fusion.

Preparativos

Antes de empezar una nota informativa, la mayoría de las tarjetas gráficas funcionan con AIGLX (Nvidia o Intel), que viene incorporado en Ubuntu desde la versión 6.10, pero que es en la 7.04 donde tiene un mejor soporte (de ahí que se recomiende 7.04 para instalar Compiz).

Sin embargo si si usas una ATI y es un modelo Radeon 9550 superior o de la serie X tendrás que usar XGL por lo que necesitarás instalar los drivers propietarios de ATI. (más información en Aceleración gráfica en Ubuntu).

AIGLX, más estable y seguro, pero solo funciona con los controladores de las tarjetas gráficas libres. Nvidia trae su propio entorno, no se necesita XGL ni AIGLX, por lo que a efectos prácticos se siguen los mismos pasos que AIGLX.

En esta guía se comenta como instalar tanto Compiz como XGL, siendo solo necesario seguir estos pasos en los casos descritos.


Eliminando restos de Compiz y Beryl

Si ya habías instalado antes una versión del antiguo XGL+Compiz es necesario que la desinstales, por lo menos, los siguientes paquetes. Para ello escribe esto en una terminal:

sudo aptitude purge compiz compiz-gnome cgwd cgwd-themes xserver-xgl csm gnome-compiz-manager

Ubuntu 7.04 trae una versión light de Compiz llamada "Efectos de escritorio" que se debe desinstalar para poder hacer funcionar Compiz Fusion

sudo aptitude purge compiz compiz-core desktop-effects
Nota clasica.png No te preocupes cuando te pregunte si quieres eliminar ubuntu-desktop, es un meta-paquete y desinstalarlo no romperá tu sistema

Si ya habías instalado Beryl debes saber que Compiz Fusion es perfectamente compatible con él por lo que no tendrás que desinstalarlo si no quieres.

Aun así siempre es recomendable usar Compiz Fusion en una instalación limpia (sin beryl ni compiz)

Si vas a usar Nvidia o AIGLX

Activar la aceleración 3D

Si vas a usar Nvidia, simplemente instala los drivers propietarios de la misma (nvidia-glx o nvidia-glx-new (tarjetas nuevas)) llendo al Gestor de Controladores Restringidos. Después de reiniciar asegurate de que tengas aceleración gráfica:

glxinfo | grep direct

Si el resultado es YES tienes aceleración gráfica. Nvidia trae en sus drivers su propio servidor para hacer funcionar todas estas cosas y que mucha gente confunde con AIGLX aunque prácticamente es lo mismo solo que con Nvidia es más transparente.

AIGLX sólo es compatible con los drivers libres (para ATI) que vienen con Ubuntu y normalmente ya están perfectamente configurados. Para asegurarte si tienes o no aceleración gráfica introduce este comando en una terminal:

glxinfo | grep direct

Si el resultado es YES tienes aceleración gráfica.

Si vas a usar XGL...

Debes saber que XGL solo esta recomendado para tarjetas Nvidia y ATI de gama media/alta (superiores a la Radeon 9550).

Si no tienes ninguna de esas tarjetas lo mejor es usar AIGLX que viene incorporado en Ubuntu.

Activar la aceleración 3D

Para ello, y dependiendo de nuestra tarjeta gráfica, el proceso es distinto.

Si vas a usar el XGL debes instalar los drivers propietarios. Si no sabes como hacerlo lee el articulo Aceleración gráfica en Ubuntu

Crear una sesión XGL

NO HE PODIDO TESTEAR NADA RELACIONADO CON XGL, por lo que es probable que TENGA ALGÚN ERROR

Ubuntu (GNOME)

Agregaremos la sesión XGL a las ya existentes:

sudo gedit /usr/local/bin/startxgl.sh

Una vez abierto el archivo startxgl.sh, añadir lo siguiente:

ATI
#!/bin/sh
Xgl -fullscreen :1 -ac -br -accel glx:pbuffer -accel xv:pbuffer
&
sleep 4
export DISPLAY=:1
exec gnome-session
Nvidia
No dispongo de información, puede funcionar lo de ATI para las Nvidia
Intel
No dispongo de información, puede funcionar lo de ATI para las Intel

Guardamos el documento y cerramos el editor de textos. Ahora debemos darle permisos de ejecución con el siguiente comando:

sudo chmod a+x /usr/local/bin/startxgl.sh

Por último debemos crear el archivo de inicio de sesión XGL:

sudo mkdir -p /etc/X11/sessions
sudo gedit /etc/X11/sessions/xgl.desktop

Añadiremos las siguientes lineas al archivo xgl.desktop:

[Desktop Entry]
Encoding=UTF-8
Name=Xgl
Exec=/usr/local/bin/startxgl.sh
Icon=
Type=Application
Kubuntu (KDE)

Agregaremos la sesión XGL a las ya existentes:

sudo kate /usr/local/bin/startxgl.sh

Una vez abierto el archivo startxgl.sh, añadir lo siguiente:

ATI
#!/bin/sh
Xgl -fullscreen :1 -ac -br -accel glx:pbuffer -accel xv:pbuffer
&
sleep 4
export DISPLAY=:1
exec startkde
Nvidia
No dispongo de información, puede funcionar lo de ATI para las Nvidia
Intel
( No dispongo de información, puede funcionar lo de ATI para las Intel

Guardamos el documento y cerramos el editor de textos. Ahora debemos darle permisos de ejecución con el siguiente comando:

sudo chmod a+x /usr/local/bin/startxgl.sh

Por último debemos crear el archivo de inicio de sesión XGL:

sudo mkdir -p /etc/X11/sessions
sudo kate /etc/X11/sessions/xgl.desktop

Añadiremos las siguientes lineas al archivo xgl.desktop:

[Desktop Entry]
Encoding=UTF-8
Name=Xgl
Exec=/usr/local/bin/startxgl.sh
Icon=
Type=Application

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 un Terminal y escribe:

sudo gedit /etc/apt/sources.list
Nota clasica.png Si Kubuntu (KDE) el editor de textos predeterminado es el kate.

Ubuntu 6.10

De momento no he encontrado ninguno, si alguien sabe de alguno que lo ponga. Creo que lo mejor es que uséis la ultima versión de Ubuntu, es decir, la 7.04.

Ubuntu 7.04

Si usas Ubuntu 32 bits al final del documento introducimos las siguientes líneas:

# Treviño’s Ubuntu Feisty EyeCandy Repository (GPG key: 81836EBF)
deb http://download.tuxfamily.org/3v1deb feisty eyecandy
deb-src http://download.tuxfamily.org/3v1deb feisty eyecandy

Si usas Ubuntu 64 bits al final del documento introducimos las siguientes líneas:

# Treviño’s Ubuntu Feisty EyeCandy Repository (GPG key: 81836EBF)
deb http://download.tuxfamily.org/3v1deb feisty eyecandy-amd64
deb-src http://download.tuxfamily.org/3v1deb feisty eyecandy-amd64

Guardamos y cerramos el archivo.

Volviendo a la terminal añadimos la clave del repositorio elegido (válida para Ubuntu 32 y 64 bits):

wget http://download.tuxfamily.org/3v1deb/DD800CD9.gpg -O- | sudo apt-key add -

Actualizamos la lista de paquetes:

sudo aptitude update 

Instalación de los paquetes

Necesitamos una serie de paquetes, a continuación se describe el proceso de instalacion de algunos de estos paquetes.

Instalando Compiz Fusion

sudo aptitude install compiz # compiz-gnome AND/OR compiz-kde

Instalando CompizConfig Configurator

sudo aptitude install compizconfig-settings-manager # compizconfig-backends-* ?!

Instalando los plugins de Compiz Fusion

sudo aptitude install compiz-fusion-* 

Si usas AIGLX no necesitas nada más, en el caso de que uses XGL (ver los casos descritos anteriormente) es necesario que además instale el servidor XGL

sudo aptitude install xserver-xgl

Antes de ejecutarlo asegúrate de seguir los pasos de configuración descritos.

Iniciar Compiz Fusion

Para iniciar compiz, una vez instalado todo, es necesario escribir por consola el siguiente comando:

compiz --replace

Con esto probamos que nuestra configuración funciona correctamente, además si queremos usar los temas de beryl en el Emerald, en vez de lo anterior, escribir esto:

compiz --replace -c emerald

Para ver más opciones permitidas podemos escribir :

compiz --help 

o con más detalles  :

man compiz.real


El problema que surge es que al escribir estos comandos, al cerrar el terminal de consola nos provocará que perdamos los efectos o la decoración de ventanas. Para evitar esto podemos iniciar compiz de varias formas.

Compiz Fusion en el inicio de Ubuntu

Una vez verificado que funciona nos falta indicar que queremos que se ejecute Compiz Fusion al inicio de nuestra sesion, por lo que agregamos a los programas de inicio. Para ello nos dirigimos a “Sistema > Preferencias > Sesiones” y en la pestaña "Programas de inicio" pulsamos Añadir y escribimos, por ejemplo:

compiz --replace

Lanzador de Compiz

Otra opción es crear un lanzador en el escritorio, para que por defecto no estén activos los efectos pero podamos iniciarlo en cualquier momento. Para ello simplemente creamos un lanzador de aplicaciones en nuestro escritorio con el comando descrito anteriormente. Al hacer doble click se activarán los efectos de compiz.

Desactivar Compiz

Una vez activado los efectos aportados por compiz la única manera de detener los efectos es reiniciando el servidor X.

Posibles problemas y posibles soluciones

Compiz Fusion es un software sujeto a un fuerte proceso de desarrollo. Esto implica 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.

Instalé todo, pero desaparecen los bordes de mis ventanas

Si desaparecen los bordes de tus ventanas es porque la configuración de tu xorg.conf no es la correcta, para corregirlo editamos el archivo tecleando en la terminal:

sudo gedit /etc/X11/xorg.conf

Nota clasica.png Si Kubuntu (KDE) el editor de textos predeterminado es el kate.

Y añadimos esto al final del archivo:

Section “DRI”
Mode 0666
EndSection


Problema con el driver de NVIDIA 1.0-9629

Existe un problema con el nuevo driver de NVIDIA 1.0-9629 en el cual no muestra la decoración de ventanas y nos da el siguiente error:

 beryl: No GLXFBConfig for depth 32

Para resolverlo, simplemente añade esta linea a /etc/X11/xorg.conf en la sección Screen:

 Option "AddARGBGLXVisuals" "True"

Aplicaciones 3D con XGL

En Xgl no existe el Direct Rendering, pero no desesperéis, porque XGL corre sobre una sesión que sí lo tiene.

Para usar aplicaciones 3D (juegos a pantalla completa, por ejemplo), solamente hay que ejecutarlos desde terminal con el maravilloso parámetro "DISPLAY=:0 "(sin las comillas) antes de la ruta del juego (generalmente basta el nombre del juego para lanzarlos).

Resulta más cómodo trastear con las lanzaderas de los menuses o hacer Shell Scripts para lanzarlos. DISPLAY=:0 los lanza a través del primer display, donde SÍ hay Direct Rendering.

Es especialmente útil cuando juegas a cosas como el Tremulous o el OpenArena, o a cualquier juego D3D que lances desde Wine o Cedega.

No aparecen los botones de Apagar y Reiniciar con XGL

Puede ocurrir que al iniciar la sesión con XGL/Compiz Fusion e ir a Apagar el sistema descubras que hayan desaparecido los botones de Apagar y Reiniciar. Pero si inicias con Gnome todo esta en su sitio. La explicación y la solución de este problema se puede leer en este hilo.

Si usas Ubuntu (GNOME)

Abre el archivo startxgl.sh:

sudo gedit /usr/local/bin/startxgl.sh

Y editamos el archivo para que quede de la siguiente manera:

#!/bin/sh
Xgl -fullscreen :1 -ac -accel glx:pbuffer -accel xv:pbuffer & sleep 2 && DISPLAY=:1
cookie="$(xauth -i nextract - :0 | cut -d ' ' -f 9)"
xauth -i add :1 . "$cookie"
# Iniciar Gnome
exec gnome-session

Guarda el archivo y reinicia el sistema para tener solucionado el error.

Si usas Kubuntu (KDE)

Abre el archivo startxgl.sh:

sudo kate /usr/local/bin/startxgl.sh

Y editamos el archivo para que quede de la siguiente manera:

#!/bin/sh
Xgl -fullscreen :1 -ac -accel glx:pbuffer -accel xv:pbuffer & sleep 2 && DISPLAY=:1
cookie="$(xauth -i nextract - :0 | cut -d ' ' -f 9)"
xauth -i add :1 . "$cookie"
# Iniciar KDE
exec startkde

Guarda el archivo y reinicia el sistema para tener solucionado el error.

Ver también

Enlaces externos