Xgl + Compiz com uma pitada de Cgwd
Autor: Danilo G. Magrini - danilo.magrini@gmail.com
Escrito em: 18/09/2006
É permitida a publicação deste artigo preservando os créditos.
Xgl + Compiz com uma pitada de Cgwd
Instalei e configurei essa dupla, ou melhor esse trio, no meu Ubuntu Dapper Drake e como muitos se interessaram estou disponibilizando aqui o procedimento que utilizei.
1. O que é o que?
Mas afinal, o que é esse monte de siglas? Vamos lá:
retirado de: http://pt.wikipedia.org/wiki/Xgl
"Xgl é uma arquitetura de Servidor X, desenvolvida por David Reveman, que roda sobre OpenGL via glitz.
Tira proveito de placas gráficas modernas através de seus drivers OpenGL, suportando aceleração
de hardware de todas as aplicações X, OpenGL e XVideo e efeitos gráficos através de um gerenciador de composição
de janelas tal como o Compiz."
retirado de: http://pt.wikipedia.org/wiki/Compiz
"Compiz é o primeiro gerenciador de janelas para o servidor de janela X que oferece aceleração OpenGL.
A integração permite que as janelas possuam efeitos visuais, como animações ao minimizar e uma área de trabalho
em forma de cubo.
Compiz segue os padrões do ICCCM e por isso pode ser usado no lugar do Metacity do GNOME e KWin do KDE."
Apesar de várias distribuições terem atualmente pacotes disponíveis para esses aplicativos iremos focar
aqui na distribuição Ubuntu 6.06 (Dapper Drake). Outras distribuições que disponibilizam os pacotes:
ArchLinux, Debian, Fedora, Gentoo, Mandriva, Suse, e algumas outras.
2. Requisitos
Descrição do meu hardware: Athlon64 2800 (clock real de 1.8Ghz), 1 GB de RAM, placa de vídeo GForce FX5200 128 MB
e um HD tosco. A documentação diz que placas de vídeo onboard e offboard suportadas são:
ATI, nVidia, Intel e Matrox desde que estejam com aceleração 3D ativada (veremos isso mais a frente).
Porém é óbvio que quanto melhor o seus hardware melhor o desempenho final.
Fiz um vídeo para demonstrar um pouco do poder desse Desktop e você pode aproveitar para dar uma olhada
na performance usando o hardware descrito acima: www.youtube.com/watch?v=zc4Oa7oISEo
Bom a partir daqui presumimos que você está com o Ubuntu 6.06 instalado e funcionando, inclusive a interface gráfica
com Gnome e o acesso a internet. Primeiramente teremos que verificar se sua placa de vídeo já está com a aceleração
3D habilitada. Faça isso através do comando:
$ glxinfo | grep rendering
Se o resultado for "direct rendering: Yes" ótimo você já pode ir para o item 3. Caso contrário você terá
que habilitar a aceleração 3D da sua placa. Vou explicar aqui o básico para se fazer isso, mesmo porque são
muitas placas de vídeo compatíveis e seria inviável detalhar cada uma delas. Portanto vou descrever somente
como fazer usando a placas NVIDIA (que é a minha).
Se você usa placas mais antigas como TNT, TNT2, TNT Ultra, GeForce1 ou GeForce2, instale os pacotes
nvidia-glx-legacy e nvidia-settings do repositório Restricted. Tá perdido? Então:
https://help.ubuntu.com/ubuntu/desktopguide/pt_BR/add-applications.html
Caso você tenha uma placa de vídeo mais atual apenas instale o pacote nvidia-glx também do repositório Restricted.
Lembre-se que para instalar faça:
$ sudo apt-get install nome-do-pacote
Feito isso é só ativer o suporte:
$ sudo nvidia-glx-config enable
E se quiser ajustar as configurações faça:
$ nvidia-settings
Pra quem conhece o arquivo /etc/X11/xorg.conf é mais simples editar o arquivo e inserir as linhas abaixo na "Section Device":
Section "Device"
Identifier "NVIDIA GeForce FX 5200"
Driver "nvidia"
BusID "PCI:1:0:0"
Option "RenderAccel" "true"
Option "AllowGLXWithComposite" "true"
Option "NvAGP" "0"
EndSection
Você também pode reconfigurar seu vídeo através do comando abaixo selecionando o driver "nvidia" ao invés de "nv":
$ sudo dpgk-reconfigure xserver-xorg
Para que as alterações tenham efeito você deverá reiniciar o X com "CTRL + ALT + BACKSPACE" ou digitando o comando:
$ sudo /etc/init.d/gdm restart
Para confirmar se tudo correu bem veja se o suporte 3D foi habilitado. Se não lembra do comando volte no início deste tópico que você vai relembrar.
OBS 1: Eu particularmente, ao invés dos procedimentos acima, preferi instalar a última versão do driver da NVIDIA que você pode baixar direto do site:
http://www.nvidia.com/object/unix.html
OBS 2: quem tem placa de vídeo ATI pode pesquisar em:
https://help.ubuntu.com/ubuntu/desktopguide/pt_BR/hardware.html
http://www.guiadohardware.net/artigos/305/
3. Instalando os pacotes necessários
Nesse momento teremos que configurar os repositórios para download dos pacotes. Lembrando que devido a extensão
do artigo e a falta de tempo irei supor que você esteja de certa forma familiarizado com o linux para executar
determinadas ações e na medida do possível tentarei citar algumas fontes de pesquisa para os menos familiarizados.
Voltando a configuração dos repositórios, devemos incluir essas linhas no arquivo /etc/apt/sources.list
deb http://www.beerorkid.com/compiz/ dapper main
deb
http://xgl.compiz.info/ dapper main
É aconselhável também que você faça o download da chave GPG para autenticação:
wget http://www.beerorkid.com/compiz/quinn.key.asc -O - | sudo apt-key add -
Agora é só atualizar seu repositório, sendo que o segundo comando "dist-upgrade" não é obrigatório mas é aconselhável:
$ sudo apt-get update
$ sudo apt-get dist-upgrade
Quero lembrar também que tudo isso pode ser feito via Synaptic em modo gráfico, mas aí fica a critério do freguês. Para que não tem a mínima idéia do que é repositório e do que eu estou falando aconselho dar uma lida em http://wiki.ubuntubrasil.org/AdicionandoRepositorios .
Por enquanto vamos instalar somente o Xgl e para isso basta instalar o pacote xserver-xgl, ou seja:
$ sudo apt-get install xserver-xgl
Vamos agora fazer um teste se o Xgl está funcionando antes de passar para a outra etapa. Existem diversas formas de fazer isso, mas a que eu vou colocar aqui é como inserir o Xgl como uma Sessão no GDM (Tela de Login). Crie um arquivo chamado startxgl.sh:
$ sudo vi /usr/bin/startxgl.sh (se você usa gnome e prefere usar um editor gráfico faça: gksudo gedit /usr/bin/startxgl.sh)
E adicione o seguinte (para placas de vídeo com chipset NVIDIA e desktop GNOME):
#!/bin/sh
Xgl :1 -fullscreen -ac -accel xv:fbo -accel glx:pbuffer &
DISPLAY=:1
exec gnome-session
OBS 1: para quem utiliza ATI ou Intel mude a opção "xv:fbo" para "xv:pbuffer"
OBS 2: para que usa KDE mude "exec gnome-session" para "exec startkde"
Não esqueça de dar permissão de execussão ao arquivo startxgl.sh:
$ sudo chmod _x /usr/bin/startxgl.sh
Agora crie outro arquivo:
$ sudo vi /usr/share/xsessions/cgl.desktop
E adicione este conteúdo nele:
[Desktop Entry]
Encoding=UTF-8
Name=Xgl
Comment=Inicia uma sessao Xgl
Exec=/usr/bin/startxgl.sh
Icon=
Type=Application
Feche a sessão e inicie uma nova sessão Xgl que já deverá aparecer no menu. Se tudo ocorreu bem devemos dar continuidade instalando o Compiz. Os pacotes a serem instalados são compiz e compiz-gnome:
$ sudo apt-get install compiz compiz-gnome
4. Colocando pra funcionar
Para testarmos o Compiz e ver se tudo está funcionando ok, devemos digitar os seguintes comando abaixo estando dentro da sessão Xgl:
$ gconftool --set --type list --list-type string /apps/compiz/general/allscreens/options/active_plugins '[gconf,miniwin,decoration,transset,wobbly,fade,minimize,cube,rotate,zoom,scale,move,resize,place,switcher,trailfocus,water]'
$ gnome-window-decorator &
$ compiz --replace gconf decoration wobbly fade minimize cube rotate zoom scale move resize place switcher trailfocus water bs neg &
Pronto. Aqui tudo já deve estar funcionando. Se você tinha alguma janela aberta, pode ser que ela fique um pouco
desajustada na tela e talvez não responda corretamente a cliques de mouse. Esse comportamento é normal com as
janelas já abertas. Se preferir feche-as com ALT+F4 e abra novamente.
Se deu algum problema você poderá desativar o Compiz com os comandos:
$ killall gnome-window-decorator
$ metacity --replace &
Para fazer com que ao entrar no Xgl seu Compiz carregue automáticamente basta criar um script com os comandos
acima e fazer a sessão iniciá-los. Ou então criar um atalho no Desktop para o script e
executá-lo manualmente.
OBS: o comando gconftool só precisa ser executado uma única vez.
5. E o Cgwd??
O Cgwd (Custom Generic Window Decorator) é um substituto ao gnome-window-decorator. Ele possue diversos temas
para a sua janela e muda a aparecia de seus botões de maximizar, minimizar e etc.
Vamos começar instalando os pacotes do cgwd:
$ sudo apt-get install cgwd cgwd-theme
Depois disso é simples, simplesmente troque a opção gnome-window-decorator por cgwd. Assim:
$ cgwd &
$ compiz --replace gconf decoration wobbly fade minimize cube rotate zoom scale move resize place switcher trailfocus water bs neg&
No menu Sistema->Administração vai aparecer uma gerenciador de temas do cgwd, aí é só escolher o seu.
5. Conclusão
A união dos três aplicativos nos da uma interface muito poderosa que não fica somente nisso, você tem muitas opções como mudar a visão do cubo como se você estivesse dentro dele, ajustar os plugins, adicionar novos e etc. Algumas das funcionalidades que existem são:
| Ctrl + Shift + Alt + Left/Right Arrow |
gira o cubo para outro workspace |
| F12 (toggle) |
selecione uma janela clicando nela |
| Ctrl + Alt + Left-click no desktop e arrast |
girar o cubo com o botão esquerdo do mouse |
| Alt + mouse wheel up/down |
transparência |
| Alt + left-click em qualquer parte da janela |
arrasta a janela com efeito de geléia |
| Shift + F9 |
faz chover no Desktop (Shift + F9 novamente desativa) |
e vários outros...
|