Hoje fui surpreendido pelo bug mais esquisito de todos os tempos, o gnome-shell não funcionou porque um de seus complementos(gnome-extensions) responsável por exibir o calendário não é capaz de exibir a palavra “Sábado” e “Terça”. Este complemento já vem ativado com o gnome-shell por padrão, sem ele, o gnome-shell também não carrega. Daí a explicação de porque às vezes o gnome-shell simplesmente deixa de funcionar de um dia para o outro.
O bug ocorre porque uma string de tradução foi escrita quando estava codificada num locale, geralmente UTF-8, mas aí seu sistema está com ISO-8859-1 ou outro qualquer, daí então um programa vai apresentar ou realizar algum calculo com essas strings e obtém um “Invalid UTF-8″. Esse tipo de erro deveria ser tratado dentro de um programa, mas aparentemente os complementos para o GNOME não fazem isso gerando um “Fatal Error” e deixando de funcionar. Curiosamente, o gnome-shell deveria se proteger quando um complemento deixa de funcionar por um “Fatal Error”, mas não faz isso e também deixa de funcionar. Se uma das grandes vantagens do gnome-shell é sua personalização através de complementos, então ele deverá se preparar melhor para que o mal comportamento deles não possam causar instabilidade no sistema por inteiro.
A solução para esse problema é simples (Obrigado Fábio Nogueira por se adiantar), edite alguns arquivos de configuração, em alguns casos alterando linhas e em outros adicionando-as, seguem-se :
/var/lib/locales/supported.d/local :
pt_BR.UTF-8 UTF-8
en_US.UTF-8 UTF-8
A linha “pt_BR.UTF-8 UTF-8″ é colocada no lugar de “pt_BR ISO-8859-1″.
/etc/default/locale :
LANG="pt_BR" LANGUAGE="pt_BR:pt:en" LC_MESSAGES="pt_BR.UTF-8" LC_CTYPE="pt_BR.UTF-8" LC_COLLATE="pt_BR.UTF-8" LC_ALL="pt_BR.UTF-8"
Salve estes arquivos com a modificação sugerida e feche o editor de textos. E tenha muita atenção, inclusive as aspas(“), pois um erro de sintaxe nesses arquivos e provavelmente seu sistema GNOME/KDE/… não subirá mais, até mesmo a montagem de discos durante o boot pode estar comprometida.
Para efetivar as mudanças nos arquivos de configurações modificados, execute no terminal (na sequencia) :
sudo locale-gen pt_BR.UTF-8 en_US.UTF-8 sudo locale-gen --purge sudo dpkg-reconfigure locales
Lembrando que as citações a “en_US*” que houverem neste artigo, é apenas no caso de manter o idioma inglês. No Ubuntu 11.10 eu não recomendo que remova o idioma inglês do sistema, de fato, pode haver comportamento estranho de alguns programas quando se faz isso. Aqui, toda vez que removo o idioma inglês me aparecem três outros idiomas ”zh_CN:zh_HK:zh_TW” que eu julgo serem chineses e que não são passiveis de remoção, ou pelo menos, o Language Settings do Ubuntu não deixa que remova-os (?). Nesse caso, a remoção do idioma em inglês é um tiro pela culatra.
Como testar se o procedimento acima funcionou corretamente e não terei problemas com “Invalid UTF-8″ em meus programas ? Bem, eu faço assim, mando iniciar o sistema e fazer as checagens do disco. Você deve estar se perguntando : “O que isso tem a ver com o idioma ?”. A principio nada, mas quando o sistema faz checagem dos discos apresenta uma mensagem que é importante para mim :
"Pressione [C] para cancelar as verificações..."
Então, quando vejo que “verificações” está escrito corretamente então significa que minhas alterações funcionaram, caso contrário, o “çõ” fica esclerosado exibindo caracteres não naturais. Para realizar este teste :
sudo touch /forcefsck
sudo reboot
Depois disso, o computador será reiniciado e iniciará o procedimento de varredura do disco.
A minha iso personalizada já inclui a correção deste bug, ubuntu-11.10c-hamacker-amd64.iso está na programação.
#1 by Carlos Felipe Araújo on 12 de novembro de 2011 - 10:36
Sugestões de wallpapers
Ocelot:
http://wallbase.cc/wallpaper/119511
http://wallbase.cc/wallpaper/639351
Outros:
http://wallbase.cc/wallpaper/1110204
http://wallbase.cc/wallpaper/1200889
E pelo amor de Deus, restaura o som de login.. ;/
#2 by hamacker on 12 de novembro de 2011 - 11:42
Altere você mesmo na lista de aplicativos de sessão, o programa Gnome Login Sound é o responsável.
#3 by Sergio (@voyeg3r) on 14 de novembro de 2011 - 13:57
Retuitei sua dica, boa mesmo. Para lhe premiar vou passar um link do forum Arch Linux
sobre como colocar o cache do firefox na memória de forma trivial https://wiki.archlinux.org/index.php/Firefox_Ramdisk