ArtigosDestaque

Um primeiro olhar ao Gnome 3

Introdução

No mundo *nix não existe um desktop, como no mundo Windows ou OS X. Devido à filosofia aberta desta comunidade, existe uma multitude de desktops e se o utilizador quiser, pode até não ter um desktop, ao contrário dos outros dois Sistemas operativos.
No entanto, com o passar dos anos, evidenciaram-se dois ambientes de trabalho. KDE e GNOME.
KDE passou por um processo de “revolução” à alguns meses, com a passagem da versão 3 para a 4 e foi um processo complicado no início, pois muitas pessoas não consideraram que a primeira versão, deveria ter sido considerada final. Mas, com o passar do tempo, tem vindo a ser melhorado e na última versão, 4.6, está consideravelmente melhor.
Em relação ao GNOME, a última versão, 2, foi lançada em 2002 e passado 9 anos será lançado outra major version, a versão 3.
Durante estes anos, foram sendo lançadas novas pequenas versões, que foram melhorando e alterando a versão inicial, no entanto, 9 anos é bastante tempo de vida para um desktop e foi decidido que ao fim de 16 pequenas versões, criar algo novo.
De referir que GNOME é bastante utilizado, sendo o desktop por default nas principais distribuições, como Ubuntu, Red Hat/Fedora e com a compra da Suse pela Novell, tornou-se muito mais importante, sendo que na versão empresarial é o desktop por default.
O GNOME 3 entrou em beta e será lançado como versão final em Abril. Se muitos consideraram o KDE 4 uma “revolução”, o GNOME 3, a nível funcional, é um corte radical com a versão 2 e com outros desktops.
A mudança é tal, que penso que vale a pena olhar para a beta e tentar compreender a proposta que está em cima da mesa.

Um pouco de história

Não vou aprofundar este ponto, pois não é a principal intenção do artigo, no entanto, vale a pena rever alguns pontos, para quem não conheça este projecto, fique com uma melhor ideia.

GNOME quer dizer GNU Network Object Model Environment e começou a ser pensado em 1997, como resposta ao KDE, que tinha sido lançado em 1996.
O problema, na altura, não estava directamente relacionado com o KDE, mas sim com a sua base. KDE sempre foi um projecto open source, no entanto é baseado em QT, que na altura tinha uma licença que não era compatível com a licença GPL.
Devido aos receios que isto causou, nasceu o GNOME, que seria baseado em GTK+. GTL+ teve sempre uma licença LGPL, que permite que programas externos, proprietários, possam ser “linkados” às suas libraries.
A primeira release do GNOME foi feita em 1999. Em 2000 QT, a base do KDE, foi dada a possibilidade de ser licenciado por GPL, no entanto, continuava-se a não poder “linkar” às suas libraries. Só em 2009, com a compra da Trolltech (detentora do QT), por parte da Nokia é que se deu uma terceira hipótese de licenciamento com LGPL, igual ao GTK+ usado pelo GNOME.

O GNOME foi iniciado por dois programadores mexicanos e em pouco tempo ganhou bastante suporte.
Como disse, a primeira versão foi lançada em 1999.

No entanto, apenas 3 anos depois, foi lançada a segunda versão, que está em produção desde então. Desde a primeira versão 2.0, até aos dias de hoje, já muito foi alterado e evoluído e o GNOME 2 actual é bastante diferente do inicial.

Um ponto muito interessante é que GNOME sempre teve algumas decisões e comportamentos que geraram bastante controvérsia.
Uma das maiores, foi com o lançamento da versão 2.6, que introduziu um “spatial file manager”. Para simplificar, isto é algo que trata cada objecto do filesystem como um objecto independente, fazendo com que a principal mudança seja que cada pasta que é aberta, é aberta numa janela própria.

O conceito não era novo. A mesma ideia estava presente no OS/2 ou no Workbench do Amiga. No entanto, esta decisão por parte do GNOME foi recebida com enorme controvérsia. A controvérsia foi tal, que chegou-se a criar um fork do GNOME, que não vingou.

Existem outras decisões controversas, como as janelas de confirmação, terem o “yes” e “no” trocados de lugar em relação à maior parte dos outros sistemas operativos.
Ainda esta semana, foi criada uma enorme discussão, entre GNOME, KDE e a Canonical, que cria o Ubuntu, com trocas de acusações entre os vários projectos, que em nada beneficia a imagem do uso Desktop em sistemas *nix.

GNOME Shell

Mas vamos ao centro deste artigo.
Apesar do título deste artigo falar sobre o GNOME 3, vou-me incidir apenas no GNOME Shell e não nas aplicações, pois este é o ponto controverso e mais interessante no Gnome 3.
O GNOME Shell é o novo interface criado para o GNOME 3 e penso que o único ponto consensual é que é uma mudança bastante radical.

Para experimentar o GNOME 3 e ter sempre as últimas versões beta, estou a usar o Fedora Rawhide. Rawhide não é propriamente uma distribuição, mas sim a base de testes do Fedora, no mesmo sentido que existe o Unstable em Debian ou o Cooker em Mandriva.
Isto é, é algo que tem sempre as últimas versões do software, sendo que não é tida em conta a sua estabilidade, sendo que isso é apenas importante para reportar bugs.

A versão do GNOME que usei para testes é a primeira beta, 2.91.90. Entretanto já estou a usar a segunda beta, 2.91.91, mas em nada mudou os aspectos que aqui vou fazer e nada mudou na minha opinião.

O computador usado para testes é relativamente fraco. Tem um Pentium 1.46 Ghz, baseado no Core 2 duo, 1 GB de RAM e uma gráfica integrada da Intel. É um bom teste também para ver a performance do GNOME 3.

Após a pessoa entrar o seu login e password, o ecrã que temos pela frente é este. Como podem ver é um ecrã limpo de qualquer opção e temos apenas visível uma barra superior. Não há qualquer outra indicação de como começar a utilizar o desktop e por isso é um pouco desconcertante e penso que difícil uso para os mais iniciantes.
Além disso, esta barra superior é um pouco diferente de muitas outras barras de outros ambientes gráficos, como poderão ver em seguida.

Como puderam ver no ecrã anterior, no canto superior esquerdo, temos um botão com o nome de “Activities”, mas vou deixar a descrição deste botão para depois.
No meio da barra, temos em grande destaque a data e hora. Quando carregamos em cima da data e hora, somos apresentados a um novo design dos botões que ficam na barra, com formas arredondadas, um fundo preto, com transparências. Algo que fica bastante elegante e moderno.
Nesta opção, é-nos mostrado um calendário e as tarefas que temos agendadas. Estas tarefas estão ligadas ao cliente de email que é usado em Gnome, com o nome de Evolution.

No entanto, nem todas as applets da barra têm este novo design, como podem ver pelo indicador de redes, que continua com o mesmo desenho que tem no GNOME 2. Penso que é algo que ainda não está acabado e que vai mudar com o tempo.

Como podem ver, quase todas as outras applets já têm o novo design, que como disse, é bastante agradável.
Mas reparem na primeira imagem. Há algo bastante estranho quando carregamos no nome do utilizador. Não temos opção de restart nem de shutdown e não há outro local com essas duas opções. Para chegarmos a uma destas duas opções, temos que efectuar um logoff e só depois no ecrã de entrada é que temos estas duas opções.
Outro ponto estranho é a opção de System Settings. Só neste local temos acesso ao painel de controle das opções do GNOME 3. A localização desta opção, para mim, é algo fora do normal.

No entanto, bastante escondido, existe uma segunda barra, na parte inferior do ecrã. Esta barra não está visível permanentemente e só quando se coloca o rato no canto inferior direito é que ela aparece.
Esta barra é um pouco estranha, porque como podem ver na imagem, é o local onde as aplicações que criam um icon na tray bar, aparecem. Mas como a barra está escondida, pouca utilidade tem, por estar escondida e raramente o utilizador vai de propósito aceder ao canto inferior esquerdo para ver que indicações lá temos.
Atenção que esta barra não é o task bar, onde os programas ficam lá. Apenas programas que criam um icon de tray, como Vlc ou Skype, é que aparecem nesta barra. Aliás, no GNOME Shell não existe o conceito de task bar.
Outro ponto é que, quando há avisos do sistema operativo ou de programas, os avisos aparecem na parte inferior, no meio do ecrã. No entanto, quando aparecem essas mensagens, não aparece a barra inferior e por isso mais insignificante se torna esta barra inferior.

Uma dos pormenores que podem ter reparado na imagem anterior a esta é que o Vlc não tem os botões de maximizar nem de minimizar.
Este facto não acontece só neste programa, é geral.
Este é um dos pontos mais controverso do GNOME Shell.
Primeiro, porque foi uma decisão tomada muito recentemente, quando o GNOME Shell já está a ser desenvolvido à bastante tempo e só quase no fim é que tomaram uma decisão tão radical.
Depois há o facto de ser algo que a maior parte das pessoas toma como garantido existir num ambiente gráfico.
Apesar de não haver botões, é possível maximizar e minimizar. No caso do Maximizar, basta carregar duas vezes na barra da aplicação. No caso do minimizar, o mais fácil é carregar no ALT+F9 ou botão direito em cima da aplicação e escolher a opção minimizar.
No entanto temos que separar as duas opções.

Em relação ao maximizar é mais simples. A opção continua a fazer sentido e carregar duas vezes na barra não é mais difícil que carregar no botão. A questão é, se continua a fazer sentido, é discutível retirar a forma historicamente mais usada para esta função.

Em relação ao minimizar, é bastante mais complicado, porque, por mais estranho que pareça, neste ambiente gráfico, não faz sentido minimizar.

Quando se minimiza uma aplicação, pouco efeito faz. Alias, a única coisa que acontece é retirar a aplicação da frente do ecrã.
Mesmo depois de minimizar, a aplicação fica activa e se fizermos um ALT+TAB para mudar de aplicação, ela continua a aparecer, apesar de a termos minimizado.

Como também não há qualquer task bar, quando minimizamos uma aplicação, ela não aparece em qualquer lugar do ecrã principal.
Poderia aparecer na barra superior, mas como podem ver na imagem, a única aplicação que aparece nesta barra, é a aplicação que está no topo. Mais nenhuma aplicação que tenhamos aberto aparece na barra.

Se quisermos ver a aplicação minimizada e todas as outras aplicações abertas, é aqui que entra o botão “Activities”. Para aceder ao botão, pode-se carregar nele ou, mais simples, encostar o rato no canto superior esquerdo, que ele automaticamente muda para o ecrã de “Activities”.
Ora, aqui temos que parar um pouco. Uma das coisas que se tem que compreender é que o GNOME Shell no fundo tem dois desktops. Sem se experimentar, é um pouco difícil de explicar o conceito.
Para simplificar, diremos que o desktop principal é algo extremamente simples, com poucas opções e só com a barra superior.
O segundo desktop, é o desktop “Activities”, onde temos outras opções, mais “normais” num desktop.
Uma das funções, como podem ver no ecrã anterior é mostrar as diversas aplicações abertas no desktop virtual em que se está.
Isto está relacionado com o minimizar, porque quando minimizamos, apenas deixamos de ver a aplicação. No entanto, se formos à parte de “Activities”, ela continua lá, no ALT+TAB, continua lá e não aparece no task bar, porque simplesmente não existe uma task bar.
Conclusão, minimizar faz pouco sentido.

Do lado esquerdo, na parte de “Activities”, temos uma barra lateral. Algo parecido com a barra do Unity em Ubuntu ou do OS X, mas não completamente igual.
Nesta barra, aparecem dois tipos de programas. As aplicações que consideramos favoritas e as aplicações que estão abertas.
A diferença para outros casos é que não importa que a aplicação esteja visível ou minimizada. A aplicação aparece sempre.
Como podem ver, a localização dos icons da barra lateral é personalizável. Nesta barra, podemos abrir uma das aplicações favoritas. A função é parecida a um atalho para a aplicação.
Outro pormenor, que podem ver na imagem, é que temos um icon com um caixote de lixo. Este icon só aparece quando se tenta mover um icon e serve apenas para retirar a aplicação da barra.
No entanto, quero voltar a referir que esta barra não aparece no ecrã principal, mas só no ecrã de “Activities”.

Quando carregamos com o botão direito em cima de um dos icons da barra lateral, temos poucas opções. Abrir uma nova janela, caso a aplicação já esteja aberta, pois o comportamento normal, quando se carrega no icon com a aplicação aberta, não é de abrir uma nova janela, mas sim colocar na parte frontal a aplicação que já está aberta.
A outra opção, se já tivermos a aplicação nos favoritos, é de a retirar dos favoritos.

Caso a aplicação esteja aberta, ela aparece na barra e com o botão direito do rato, temos a opção de adicionar como favorito, fazendo assim que, mesmo quando fechamos a aplicação, ela continua como atalho na barra.

Continuando na parte de “Activities”, como viram no início, no meio do ecrã, aparece em ponto pequeno e em real time, as aplicações que estão abertas.
Se carregarmos numa dessas aplicações, saímos da parte de “Activities” e voltamos para o desktop principal, com a aplicação que escolhemos estando no topo.
Na parte de “Activities”, se passarmos o rato por cima de uma das aplicações, aparece uma segunda cruz para fechar a aplicação, como podem ver na última imagem. Isto para mim é algo estranho, pois a aplicação já tem um botão para fechar a aplicação. Parece-me redundante.

Como podem ver neste ecrã, neste desktop de “Activities”, temos um campo de pesquisa no canto superior direito.
Quando escrevemos algo nesse campo, no centro aparecem aplicações, preferências e ficheiros que estejam relacionados com essa palavra.
Temos também algo um pouco surpreendente. A possibilidade de procura dessa palavra no Google ou na Wikipedia.

No entanto, quando se procura no Google ou Wikipedia, não existe uma integração com o desktop. É apenas aberto um tab no browser com os resultados da procura.
Acho discutível a utilidade da opção de procura do Google e Wikipedia, quando não integra com o desktop.

Avançando mas continuando na parte de “Activities”, do lado direito, temos uma barra meio escondida com os desktops virtuais. Esta barra aparece por completo, quando passamos com o rato por cima, como podem ver na imagem anterior.
No entanto, a funcionalidade de desktops virtuais é um pouco diferente do habitual. Foram experimentadas várias opções, mas parece que esta última é a definitiva.
De origem, só existe um desktop virtual e não um número fixo de desktops virtuais. Só é criado um novo desktop virtual, quando pegamos numa aplicação e a movemos para o segundo desktop virtual e fica preparado um terceiro desktop virtual pronto a ser criado.
Isto é, os desktops virtuais são dinâmicos. No entanto, esta solução não é perfeita, como poderei explicar mais à frente.
Por último, a visibilidade do que está a ser feito em cada desktop virtual, não é algo estático, mas sim em real time.

Ainda nesta parte, quando se “pega” numa aplicação, pode-se mover para um desktop virtual, mas do lado esquerdo, também aparece o caixote do lixo, na barra de icons.
A primeira coisa que pensei é que arrastando a aplicação para este caixote, iria fechar a aplicação, mas não é essa a acção. O que acontece é que a aplicação continua aberta e só a tiramos dos favoritos dessa barra.

Esta última imagem só confirma o que tinha dito anteriormente. Quando movemos uma aplicação para um segundo desktop virtual, é criado dinamicamente um terceiro, onde podemos mover outras aplicações.

Como podem verificar nestas duas últimas imagens, dois desktops virtuais são completamente independentes. Isto é, no desktop virtual onde estivermos, só aparecem as aplicações que estão nesse desktop virtual, seja no ecrã de “Activities”, seja no desktop principal.

Nestas duas imagens podem verificar que, se pegarmos numa aplicação de um desktop virtual e movermos para o anterior, dinamicamente é fechado o último desktop virtual.

Quem leu o artigo até agora, pode-se estar a perguntar como se acede às aplicações, sem ser as que temos nos favoritos da barra lateral esquerda.
Não é propriamente simples ou intuitivo, mas no desktop de “Activities”, na parte superior direita, temos duas opções. “Windows” e “Applications”.
A opção de default é a de “Windows” e temos que carregar em “Applications”, para termos acesso a todas as aplicações.
Neste ecrã são apresentadas todas as aplicações, sem separação. É composto com icons bastante grandes e onde se pode ver o nome da aplicação. Este foi um dos pontos melhorados, porque anteriormente, os icons eram muito pequenos e não havia espaço para ver o nome completo de cada aplicação.

Se soubermos o nome da aplicação que queremos, a forma mais simples de a encontrar é escrever o nome no campo de procura, pois automaticamente aparecem os programas com esse nome.

Caso não soubermos ao certo o nome da aplicação, temos do lado direito, um menu com as aplicações separadas por categorias.

Mudando de área. O painel de “System Settings” está bastante diferente, tanto na sua visualização, como no uso. Algo que acho importante de referir é que penso que esta é uma área que não deve estar para já completa, pois em cada update tem sido adicionadas opções e modificações.
Como em quase todo o lado, temos um campo de procura.

Por exemplo, no ecrã de “Screen”, ainda temos poucas opções e campos sem valores. Os botões de “on” e “off” fazem lembrar o OS X.

Já na secção de “Background” as opções estão bastante completas.

Na parte de “Keyboard” podemos definir os atalhos para diversas acções. No entanto reparo num pormenor. Como os desktops virtuais são dinâmicos, só podemos definir atalhos aos desktops virtuais que na altura estão activos. Este penso que é a parte negativa de ter desktops virtuais dinâmicos.

Por último, no file manager temos de novo a presença do campo de procura, para facilitar a busca de pastas e ficheiros.

Estabilidade e bugs

A nível de estabilidade, não é que esteja à espera que o Fedora Rawhide seja 100% estável, mas ao utilizar o computador em tarefas completamente diferentes, de vez em quando, o desktop bloqueia ou algum efeito de desktop para e o GNOME Shell crasha. O que acontece é que, momentaneamente, todos os menus e aplicações desaparecem e ao fim de alguns segundos volta tudo ao normal. Até agora, nunca perdi qualquer informação ou aplicação que estivesse aberta, por isso estes crashes não são graves.

A nível de bugs, é um pouco mais complicado, porque muitas vezes é complicado perceber se algo é um bug ou um novo design do desktop.
Seja como for, algumas coisas se notam. Por exemplo, quando alguma aplicação faz browse ao filesystem, é aberta uma segunda janela, como normal, mas é impossível mover a janela. No local onde ela abre é o local onde fica.
Outro ponto é a dificuldade de personalização do GNOME 3. O painel de controle tem ainda falta de muitas opções, não se consegue adicionar applets à barra superior, instalar um novo tema é um pesadelo (basicamente é andar a copiar ficheiros, porque não há um local para instalar um tema).
Onde quero chegar é que, pelo menos por enquanto, é muito pouco flexível. Depois do que é instalado por default, poucas coisas se pode alterar de forma simples a nível visual e de usabilidade e é imposto o que foi criado por default.
Espero que este último ponto não seja algo feito de propósito e que seja algo que ainda esteja por implementar.

Performance

Este foi um ponto que me tem agradado.
Tendo em conta que estou a usar um computador com um processador com baixo clock, pouca cache L1 (1 MB), pouca RAM (1 GB) e uma gráfica Intel integrada, não me posso queixar neste ponto.
Só começo a notar um pouco mais de lentidão quando tenho 4 ou mais aplicações abertas e em uso ao mesmo tempo e acedo ao desktop de “Activities”. É neste ponto onde inicialmente se começa a notar maior lentidão.
No entanto tirando isso e dizer que não é uma lentidão que se note muito, tenho usado o GNOME 3 sem qualquer problema.
Não é um Fluxbox, mas também não penso que seja esse o objectivo. Sou capaz de arriscar que o GNOME 3 é mais leve que o GNOME2, pelo menos neste momento.

Conclusão

Esta vai ser a parte deste texto mais complicado de escrever.

A grande questão é que o GNOME Shell é uma completa revolução e extremamente radical nas suas ideias.
Devo dizer que escrevi este texto depois de quase duas semanas de o estar a usar como computador principal e não foi escrito apenas depois de experimentar um LiveCD.
Se tivesse experimentado apenas um LiveCD por momentos, o texto seria bastante diferente, para pior. A razão de tal é que a primeira vez que começamos a usar o GNOME Shell, o que nos passa pela cabeça é “WTF! Em que é que eles estavam a pensar para criarem este absurdo”.

Depois de usar durante algum tempo, tentamos compreender as ideias que estão por detrás das decisões mais radicais.
Por exemplo, de facto, pouco sentido faz a presença do botão minimizar, porque da forma como está construído o GNOME Shell, de pouco uso serve. Já o botão maximizar é mais complicado perceber. Esta opção continua a fazer sentido a nível de usabilidade. É verdade que uma pessoa com alguma experiência sabe que um duplo clique em cima da barra da aplicação, faz o mesmo efeito. No entanto, a forma mais conhecida e usual para maximizar é pelo botão. Não sei que reacção terá um utilizador com menos conhecimentos, quando olhar para a aplicação e não vir lá os botões.
A não existência de uma task bar, de uma barra de notificações que está escondida ou uma barra de aplicações favoritas que está noutro desktop também é controverso, no entanto leva-nos a pensar se precisamos de tal no desktop principal e deixar essas funções para o desktop de “Activities”. É que uma das grandes vantagens é a simplicidade e área utilizável no ecrã principal.
Depois há coisas que não percebo por completo. Por exemplo a localização da opção de “System Settings” ou não estar disponível as opções de “Restart” e “Shutdown”.

Por um lado, gosto de ver um projecto tão grande como o GNOME experimentar algo novo, na tentativa de inovar, mas é preciso ter cuidado, porque não se pode mudar só para ter algo diferente, mas tem que se mudar para melhorar os diferentes aspectos, como a usabilidade, aspecto visual, etc.

Onde quero chegar é que, apesar de o usar intensamente desde há quase duas semanas, ainda estou em estado de choque. Não sei se é genial ou um fracasso.
Diria apenas que pessoalmente, se esta fosse a versão final, não o usaria por muito mais tempo. Dito isto, também não estou contente com o Unity, por exemplo com os menus das aplicações na barra superior e desde que saiu o KDE 3 que odeio bastante o KDE. Acho uma imitação “rasca” do Windows e se um quiser usar Windows, uso Windows e não uma cópia.
Por isso e para mim, escolheria Xfce ou Fluxbox. Não acho que LXDE esteja no ponto e por exemplo o Xubuntu 11.04 Alpha está muito melhor que o Ubuntu 11.04 com o Unity.

Outra grande questão é como vai ser a reacção de quem não tenha grande experiência com computadores ao tentar utilizar o GNOME 3. Talvez uma pessoa sem vícios, como eu, tenho uma experiência melhor, apesar de ter algum receio que aconteça o contrário.

Acho que no meio de isto tudo, tenho uma certeza. O GNOME 3 vai ser muito controverso e vai dividir muito as opiniões. Ou se vai adorar ou se vai detestar.

Artigos Relacionados

Botão Voltar ao Topo