quinta-feira, 17 de maio de 2012

Ubuntu 12.04 com diver open-source Nouveau


O driver proprietário da Nvidia é sem dúvida superior no desempenho. Então para quê voltar ao nouveau? O problema é que a versão 295.40 do driver nvidia está dando problemas no Ubuntu 12.04.
Os vídeos no flashplayer ficam em tons de azul, e além disso o driver nvidia 295.40 está provocando alguns pequenos "arrastamentos". Isso sem falar nos pequenos glitchs que aparecem quando utilizo o ffmpeg para gravar o desktop.

Por isso vou temporariamente voltar para o driver open-source nouveau. O desempenho é mais pobre. Mais pelo menos é mais estável do que o 295.40 da Nvidia. Apesar do desempenho do nouveau ser limitado, é suficiente para correr o Unity e alguns programas 3D sem sobressaltos. E não se nota diferença na fluidez. Só volto para os drivers da Nvidia, quando for lançado uma versão mais estável e sem os problemas que já foram referidos.

Tenha cuidado com o procedimento em baixo para instalar novamente o driver open-source! Apesar de ser um processo simples, é necessário alguns conhecimentos na linha de comandos. Porque se surgir algum problema, é em modo texto que ele poderá ser resolvido.

Antes de mudarmos para o "modo texto" vamos criar um novo arquivo de configuração do xorg.conf, e assim evitar de usar um editor de textos na linha de comandos

sudo gedit /etc/X11/xorg.conf.NOVO
copie para dentro do arquivo o seguinte:

Section "Screen"
          Identifier   "Default Screen"
          DefaultDepth   24
EndSection

Section "Module"
          Load   "dri2"
EndSection

Section "Device"
          Identifier   "Default Device"
          Driver   "nouveau"
EndSection

Clique em "Guardar" e feche o editor de textos.

Agora vamos mudar para o modo texto com a seguinte combinação de teclas:

CTRL+ALT+F1

O prompt de comando vai pedir o nome de utilizador, e a password.

Antes de remover os drivers da nvidia, temos primeiro de parar o ligthdm (modo gráfico)

sudo service ligthdm stop
Agora vamos fazer um backup do xorg.conf

sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.ANTIGO
Agora o "xorg.conf.NOVO" que criamos com a ajuda do gedit em modo gráfico vai de substituir o xorg.conf. Para isso vamos utilizar o comando:

sudo mv /etc/X11/xorg.conf.NOVO /etc/X11/xorg.conf
No proximo comando removemos o driver da Nvidia:

sudo apt-get remove nvidia-current
Para finalizar vamos reiniciar a máquina, e esperar que tudo dê certo :P

sudo shutdown -r now

Apoś o login verifique se é o driver nouveau que está sendo utilizado.

sudo apt-get install mesa-utils
glxinfo | grep OpenGL

o resultado será mais ou menos como este:

OpenGL vendor string: nouveau
OpenGL renderer string: Gallium 0.4 on NV96
OpenGL version string: 2.1 Mesa 8.0.2
OpenGL shading language version string: 1.20
OpenGL extensions:

Solucionando problemas.
Se após reiniciar a máquina o modo grafico falhar e você foi parar no modo texto, faça login no modo texto e execute os seguintes comandos para colocar tudo como estava:

sudo mv /etc/X11/xorg.conf.ANTIGO /etc/X11/xorg.conf
sudo apt-get install nvidia-current
sudo shutdown -r now

Os três comandos em cima são para restaurar xorg.conf original, instalar o driver da nvidia e reiniciar a máquina.

Para ver qual a última versão do driver nvidia que está disponível no repositório, use o seguinte comando:
apt-cache show nvidia-current-updates | grep Version: