domingo, 22 de abril de 2012

N900: rodando o sistema Mer/Nemo

O Maemo 5 é um sistema excelente, ainda uso o N900 com ele e me surpreendo de como ainda hoje me parece atual. O que não tão é atual, é preciso que se diga, é a oferta de aplicativos. A comunidade Maemo continua produzindo, mas não são versões dos mesmos apps que se vê para Android e iOS nos sites de notícias (tipo Instagram, client oficial de Facebook e etc). Outra coisa de que sinto falta é de novidades no próprio sistema operacional,  novas versões, features, etc. Veja aqui como instalar a última versão do Mer/Nemo, o sucessor do Meego.



Depois que a Nokia lançou aquela triste versão final  do Meego (a 1.1) para N900, e logo em seguida abandonou oficialmente o Meego, achei que o ciclo de novos sistemas para o N900 tinha chegado ao fim. O último sistema utilizável é o Maemo 5 PR1.3, pois o Meego na versão final ainda estava muito ruim, nem forçando uma barra conseguiria utilizá-lo. Durante um tempo deixei o N900 quieto (ou seja, usando apenas como usuário, sem mexer no sistema) e passei a utilizar os celulares Android para a prática de testes de novos sistemas, principalmente ROM mods do próprio Android. Só que acabei dando uma parada nas mexidas no Android também, isto porque no meu aparelho atual, o Nexus S, o Google vem mantendo o sistema atualizado, e fica meio dificil justificar a instalação de mods.  O Android 4.0.4 chegou faz pouco tempo, e a  versão do Nexus S direto da Google na minha opinião é muito boa, não justificando um mod... ainda... então por enquanto quero deixar o Nexus S quieto, só como end-user. Com isso minha atenção de se volta para o N900 de novo. O que eu poderia instalar nele?

Acontece que, com o fim do Meego, o desenvolvimento deste sistema continuou em outras duas iniciativas, mesmo que ainda sem aplicação direta em novos aparelhos. Tem o Tizen, já mostrado aqui no blog, e o Mer. E para o N900, N950 e N9, a distribuição do Mer é chamada Nemo Mobile. Pelo que entendi até agora, o Mer seria uma coisa mais geral, e o Nemo a implementação específica para máquinas reais, no caso estes modelos da Nokia citados. Quanto à atualização, a última versão é de 12/04/2012, e já houve 5 versões este ano ( ver http://repository.maemo.org/meego/Nemo/). Note que os arquivos estão hospedados dentro do domínio do maemo.org. Ainda não entendi como ficou a parte política disso tudo, mas aparentemente o Mer é composto por voluntários vindos da comunidade Maemo, ao passo que o Tizen é patrocinado oficialmente pela "The Linux Foundation". Ainda assim, na página do Mer é citado que existe colaboração entre os dois grupos. E os aplicativos são os feitos em Qt para o Meego. Quer dizer, existe ainda uma forte integração entre Meego-Tizen-Mer, e também com a comunidade Maemo, cujo sistema também usa a ultima versão do Qt).

Rodando vários sistemas no N900

O N900 é um celular muito bom para experimentar outros sistemas. Ao contrário do Android, em que é preciso sobrescrever o firmware, no N900 é muito fácil manter o esquema de dual-boot. Existem duas formas de fazer isso, sendo a mais prática a por meio do U-Boot. (A outra é a utilizada pelo Nitdroid, que não gosto tanto, meu sonho era o Nitdroid usando U-Boot). O U-Boot é instalado pelo Maemo 5, e fornece um gerenciador de boot que permite rodar ou o próprio Maemo instalado na memória interna, ou um outro sistema instalado no SD-Card. Na inicialização do N900, se não houver um sistema instalado no SD-Card (ou se não tiver nenhum SD-Card no slot...), ele entra no Maemo. Se houver, por default ele entra no sistema do SD-Card, depois de um curto timeout de 3 segundos. Durante este tempo, pode-se também abrir o teclado, teclar qualquer coisa, e depois mandar o comando:

run noloboot

E desta forma também entrar no Maemo 5 original, instalado internamente. A beleza deste esquema é que o sistema original fica totalmente preservado, e pode ser acessado facilmente removendo o SD ou usando o comando acima. Além disso o processo de gravação das novas versões de sistemas e serem testadas podem ser feita fora do smartphone, no PC, sem risco nenhum nesta etapa. Pode-se também ter vários sistemas ou versões instalados em vários carões Micro-SD, bastando trocar o cartão para trocar o sistema.

A desvantagem é não poder utilizar ao mesmo tempo o slot micro-SD para guardar dados, mas neste caso vamos lembrar que o N900 já vem com 32 Gb internos, uma imensidão até para os dias de hoje, mais de 3 anos depois do lançamento do N900. 16 Gb ainda é o que vem na maioria dos aparelhos top... morram de inveja! :-)

Instalando o U-Boot

O único risco deste processo é na instalação do U-Boot. Pessoalmente já instalei e desinstalei duas vezes sem nenhum problema, nem ter que "flashear" de novo o firmware. A instalação em si é simples e rápida, pelo próprio gerenciador de aplicativos do Maemo 5 (esta na seção Sistema, e o repositório "extras-devel" deve estar ativado). É preciso apenas tomar cuidado de instalar sobre a versão PR1.3 original,e não ter nada que a modifique, como o Power Kernel. Li na lista de modificações do U-Boot que houve versão para corrigir esta incompatibilidade, mas eu não testei e não quis arriscar. Eu estava com o Power kernel esta semana, mas retirei antes de instalar o U-Boot (para retirar o Power kernel basta utilizar o ícone na janela de programas). Se você precisa muito do Power Kernel, o que não é meu caso, pode tentar, mas estando preparado para ter que fazer um flash do firmware completo e perder todas as configurações e instalações. E sem esquecer do backup dos dados, claro. Está implícito também que estes procedimentos são para quem tem um certo conhecimento sobre o Maemo e o N900, a ponto de fazer a recuperação se necessário sem traumas. O U-boot também pode ser desinstalado por uma linha de comando no terminal do N900:

apt-get install --reinstall kernel kernel-flasher


Já testei este comando sem problemas, mas caso não haja incompatibilidade com nenhum outro software instalado, eu sugiro deixá-lo lá mesmo não utilizando. Fora a mensagem na tela inicial e o timeout de 3 segundos, isso não afeta em nada o Maemo 5 original.  E se você teve vontade de usar outro sistema uma vez, talvez queira usar de novo.


Um tutorial  sobre como instalar e desisntalar o U-Boot pode ser visto aqui:
http://wiki.meego.com/ARM/N900/Install/Dual_Boot

Ele faz referência apenas ao Meego, mas como se verá, no caso do Nemo é a mesma coisa, a não ser é claro pelo arquivo de imagem do sistema a ser gravado no SD.

Uma vez que o u-boot esteja corretamente instalado, o resto do procedimento é bem tranquilo. Peguei o arquivo de imagem aqui:
http://repository.maemo.org/meego/Nemo/0.20120405.1.NEMO.2012-04-12.1/images/nemo-handset-armv7hl-n900/

O arquivo é o de extensão BZ2:

nemo-handset-armv7hl-n900-0.20120405.1.NEMO.2012-04-12.1-mmcblk0p.raw.bz2




Depois eu segui o procedimento feito para o Meego (como dito antes, é o mesmo, a não ser pela imagem):

http://wiki.meego.com/ARM/N900/Install/MMC#Installing_Rootfs_on_external_MMC_card


Sendo que na página acima é preciso filtrar apenas o que importa para cada situação. Para facilitar, segue o que eu fiz com o arquivo baixado acima, usando o Windows (Vista 64):

1- Extraí com o 7zip (que eu já tinha e uso sempre, e não o bzip2)
2- Renomeei o .raw para .img, tal como dito no tutorial
3- Coloquei um micro SD de 8 Gb, em um adaptador para USB no PC. Não precisa formatar nem preparar, mas o passo seguinte vai apagar todo o conteúdo anterior dele.
4- baixei e usei o Win32DiskImager, para gravar o arquivo .img anterior do passo 2 no SD 

Link para download do Win32DiskImager:
https://launchpad.net/win32-image-writer/+download

Depois basta colocar o micro SD no slot do N900, fechar a tampa e ligar. Deve aparecer a mensagem do U-boot, um contador de 3 segundos, e depois o boot do Nemo, ainda com algumas mensagens meio esquisitas que podem ser ignoradas se você chegar na tela inicial.



A performance do Nemo e o SD Card

Já achei o Nemo bem melhor que o Meego para N900 em termos de performance, que restei no mesmo SD Card. Digo isso porque o cartão micro SD utilizado tem muita influência nisso. Aqui dois fatores são importantes. A classe da memória e a compatibilidade com o N900. No primeiro caso, ao comprar um SD deve-se procurar os de classe maior, que indicam mais velocidade. Por exemplo, estou usando um classe 4, que é lento, e estou para comprar um classe 10. Mas isso também não garante mais velocidade e melhor performance, pois existem casos de incompatibilidade relatados que, devidos a erros e retransmissão, fazem a performance cair muito. E não adianta reclamar com os fabricantes neste caso, pois o procedimento de dual boot via SD não é proposto para usuários finais. São os riscos inerentes a este tipo de teste, por exemplo, comprar um SD e não ficar bom para instalar um sistema. Pelo menos um SD hoje em dia tem muitas utilidades, pode ser usado em outros aparelhos, como pendrive (no adaptador, etc). Meu plano agora é tentar gravar esta imagem em um SD melhor e ver se consigo algum ganho em velocidade.

O que já fiz no Nemo

Não tive ainda muito tempo com o Nemo. o que eu fiz foi navegar um pouco na interface, o que é dificultado pelo fato dela ser bem diferente, mas se um dos objetivos é ver novidades, isso não é realmente um problema. No entanto um pouco de documentação ajudaria. O que já testei:

1- Envio e recebimento de chamadas telefônicas - OK
2- Conexão com rede WiFi - OK
3- Navegação Web - Ok (funciona, mas muito lenta)
4- Instalação de um app do Meego pela loja, via WiFi - Ok
5- Câmera fotográfica - OK

Este é o nível de usabilidade que eu esperava do Meego quando a Nokia lançou a primeira versão para desenvolvedores. Agora pode-se dizer que dá pra usar, embora sem muito conforto.

O Nemo está no meu N900 agora, e vou alternando entre ele e o Maemo 5, tentando explora-lo e ver até onde pode chegar. De tempos em tempos é bom visitar a página do projeto Mer ou do prórprio Maemo.org em busca de atualizações e novidades.

Referências:
Página do projeto Mer/Nemo Mobile


Nenhum comentário :

Postar um comentário