Meego: a fusão entre Maemo e Moblin

MeeGo: the merger of Maemo and Moblin
Autor original: Nathan Willis
Publicado originalmente no:
lwn.net
Tradução: Roberto Bechtlufft

logo

O mundo do Linux móvel está prestes a ficar mais simples: a plataforma Maemo da Nokia para dispositivos móveis e o projeto Moblin da Intel para netbooks estão em processo de fusão . A pilha combinada “MeeGo” vai continuar mantendo uma divisão entre os tipos de dispositivos em nível de “experiência do usuário”, mas irá compartilhar os mesmos componentes em nível de sistema e, assim esperamos, unirá as comunidades de desenvolvedores, oferecendo uma base comum. O anúncio foi feito em 15 de fevereiro, e mais detalhes vêm sendo divulgados no site meego.com.

A Nokia deu o pontapé inicial no Maemo em 2005. Ele começou fazendo parte de uma série de tablets de bolso com conexão WiFi e sem conectividade celular, mas acabou indo parar em celulares com o lançamento do N900 em 2009. O Moblin foi lançado em 2007 pela Intel, de olho em netbooks com processadores Intel Atom. Em abril de 2009, a Intel entregou a gestão do projeto à Linux Foundation, que é uma fundação sem fins lucrativos, mas continuou a guiar seu desenvolvimento. O Moblin lançou publicamente o código 2.0 “beta” para netbooks em maio, e em setembro deu uma palhinha de uma versão atualizada, que rodava em telefones com processadores Atom.

A imprensa especializada da indústria móvel obviamente está divulgando o anúncio do MeeGo como uma manobra defensiva para fazer frente ao desafio do Android do Google (e, em menor escala, ao ChromeOS). O Android teve um crescimento enorme no ano passado, e hoje está presente em mais de vinte produtos de diferentes fabricantes de dispositivos. Embora o Android pareça ser um desafio mais direto ao Maemo, ele não está limitado aos telefones. Foram anunciados vários produtos que ameaçam domínios de interesse do Moblin, como netbooks, tablets e leitores de e-book. E o Google não é o único fornecedor de sistemas operacionais móveis produzindo uma plataforma baseada no Linux para dispositivos portáteis: Palm, Samsung e o multiconsórcio de fabricantes LiMo Foundation estão todos competindo nesse setor.

No entanto, dentro do espectro de sistemas operacionais móveis com Linux, o Moblin e o Maemo já eram os dois projectos com a maior sobreposição em termos de design técnico e estrutura de gestão. O Android, o ChromeOS e o webOS da Palm usam o kernel do Linux e partes da mesma pilha de software encontrada em desktops gráficos, mas oferecem APIs limitadas para a implantação de aplicativos. Embora o código fonte dos componentes de upstream esteja disponível a todos os sistemas operacionais baseados no Linux, as plataformas ainda diferem em termos de abertura. O Android e o ChromeOS estão disponíveis gratuitamente para desenvolvedores externos à plataforma, e aceitam patches e relatórios de bugs. A plataforma LiMo inclui componentes de autoria de fabricantes de celulares, incluindo alguns componentes proprietários. A plataforma é regida por seus contribuintes-membros. O webOS e o recém anunciado Bada da Samsung são produtos de um fornecedor só.

O Maemo e o Moblin começaram a partir de distribuições Linux existentes para desktop: o Maemo foi originalmente baseado no Debian, e o Moblin no Fedora, mas os dois também incorporaram tecnologias de outras distribuições. Ainda assim, por dentro, ambos executam plataformas de middleware bastante semelhantes. Os dois utilizaram X, Glib, D-Bus, Pango, Cairo, GStreamer, Evolution Data Server, PulseAudio, o mecanismo de renderização HTML Gecko da Mozilla, Telepathy, ConnMan e uma série de outros utilitários em comum. Dave Neary, do GNOME, chegou a comentar sobre a semelhança entre os dois projetos em resposta à preocupação de que haveria plataformas móveis demais com o Linux. Além disso, os dois projetos procuraram tornar suas plataformas totalmente acessíveis aos desenvolvedores externos, sem a necessidade de licenciar um SDK ou, na maioria dos casos, de criar código para APIs diferentes. Eles trabalharam para desenvolver comunidades ativas e abertas em torno da base de código.

Em retrospecto, porém, talvez o prenúncio mais claro da fusão seja o oFono, o projeto de pilha de telefonia aberta lançado em conjunto pela Intel e pela Nokia em maio de 2009. A pilha de telefonia de código fechado incluída no N900 foi um para-raios de críticas dos defensores do software livre – embora a Nokia tenha justificado sua decisão de escrever uma nova pilha “do zero” – mas antes do anúncio de segunda-feira, o envolvimento da Intel no oFono parecia mesmo muito esquisito. Agora faz sentido.

Detalhes da fusão

Apesar das semelhanças, Maemo e Moblin tinham suas diferenças, especialmente na escolha do kit de ferramentas de alto nível. O Moblin usava o GTK+ e o Clutter como kits de ferramentas preferidos, enquanto a versão mais recente do Maemo estava em processo de transição para o Qt.

Como postado no site Meego, a plataforma combinada se assemelha bastante à base do Moblin, mas com o Qt como kit de ferramentas de interface. O diagrama de arquitetura fornecido é vago, listando os componentes apenas como “Internet”, “Serviços de Mídia”, “Gerenciamento de Dados” e assim por diante, mas de acordo com informações adicionais fornecidas pelo MeeGo, a maior parte da pilha mantém-se inalterada em relação ao Moblin 2.0.

O diagrama de arquitetura do MeeGo tem blocos de Qt e de GTK+/Clutter, mas o bloco de Qt é três vezes maior, e os documentos de introdução na seção dos desenvolvedores só tratam do Qt. Ainda assim, o FAQ diz explicitamente que os dois kits de ferramentas terão suporte, então a interpretação mais simples do diagrama pode ser a de que a Nokia, como proprietária corporativa do Qt, deve contribuir com uma parcela maior de tempo de seus desenvolvedores através de seu kit de ferramentas.

O que é mais interessante é que a plataforma combinada MeeGo irá suportar pelo menos duas arquiteturas: ARM e Atom – além de quaisquer outras defendidas pela comunidade. O processo de habilitação para hardware dá uma ideia do que o projeto MeeGo tem em mente, com os mantenedores das plataformas de cada arquitetura supervisionando a responsabilidade pelo kernel, pelo X, pelo gerenciador de inicialização e por outras outras adaptações específicas para cada hardware.

Diferentes dispositivos parecem divergir no topo da pilha, no entanto, no que o MeeGo descreve como o nível de experiência do usuário, ou “UX”. As duas UXs discutidas no site são a UX de dispositivos portáteis e a UX de netbooks, que correspondem perfeitamente aos espaços de produto anteriores do Maemo e do Moblin. Ainda não está tão claro o que está incluído em cada bloco de UX; cada UX definitivamente inclui a interface de usuário básica e a suíte de aplicativos, mas de acordo com o diagrama de arquitetura, também incorpora um framework de interface de usuário. Curiosamente, há várias referências no site do Meego a outras UXs, inclusive para computadores instalados em veículos e televisões conectadas – uma possibilidade talvez seja o Genivi, um grupo industrial sem fins lucrativos que trabalha em sistemas de “Infotainment veicular”.

No passado, a camada da UX era um pequeno ponto de discórdia na comunidade do Maemo, porque a Nokia manteve fechado o código fonte de vários de seus aplicativos de alto nível. Embora a maioria tenha aceitado essa situação, sempre havia alguns que se opunham à presença de quaisquer componentes fechados na distribuição. A Nokia respondeu fornecendo uma lista detalhada dos componentes fechados, as razões pelas quais cada um deles não foi aberto e um procedimento através do qual os desenvolvedores poderiam solicitar a abertura de um componente específico.

Para ver exatamente o que os dispositivos MeeGo vão incluir como componentes das UXs, só mesmo esperando os produtos chegarem. A primeira versão da plataforma MeeGo em si está prevista para o segundo trimestre de 2010, e os produtos virão mais adiante, no mesmo ano. Quim Gil, da Nokia, diz que o lançamento do Maemo 6, que estava previsto para 2010, vai seguir conforme o planejado; o Maemo agora vai levar o nome MeeGo, mas não vai incorporar nenhuma mudança ao software.

Comunidades

Maior do que o desafio de produzir uma nova distribuição Linux móvel será fundir as comunidades de usuários e desenvolvedores do Moblin e do Maemo. O Maemo é mais velho, e tem uma comunidade mais estabelecida, com um fórum ativo, um conselho comunitário e extensa documentação e procedimentos para que desenvolvedores de aplicativos independentes tenham seu software testado e empacotado para lançamento público.

A comunidade do Moblin é pequena, centrada em um par de listas de discussão, e tem uma garagem menor de aplicativos de terceiros. Por outro lado, a maioria dos aplicativos de terceiros do Moblin são compilações para o Moblin de aplicativos existentes para o Linux; em contraste, muitos projetos do Maemo são trabalhos novos ou pesadas modificações de aplicativos focados na experiência do usuário em dispositivos portáteis.

Os debates sobre a forma como as comunidades serão mescladas já começaram dentro do Moblin e do Maemo. O site do Meego já oferece opções para IRC e listas de discussão, mas ainda não publicou documentação para desenvolvedores e nem lançou o sistema de acompanhamento de bugs. Porém, o site dá uma ideia do processo de participação para trabalhar no Meego em si, por meio da política de licenciamento e das orientações para contribuições.

A gestão ficará a cargo do Technical Steering Group, que será liderado por Imad Sousou da Intel e Valtteri Halla da Nokia, e que se reunirá publicamente a cada dois meses. Não há nenhum processo de admissão ou de adesão para se tornar um contribuinte do Meego, e para contribuir com código não será necessário ceder os direitos autorais:

O projeto MeeGo não vai exigir e nem aceitar cessão de direitos sobre o código que for contribuído. Por um lado, o princípio por trás disso é o de evitar a burocracia extra ou outros obstáculos que possam desencorajar contribuições. Pelo outro, a ideia é a de enfatizar que os próprios contribuidores possuem os direitos e responsabilidades associados ao seu código. O MeeGo é uma preocupação comum de sua comunidade, e todos os participantes devem se fazer representar e influenciar continuamente os resultados por meio de suas próprias contribuições.

Os desenvolvedores são encorajados a contribuir com código aos projetos do upstream, e não ao MeeGo. O foco do projeto está em integrar os componentes já existentes no upstream em uma plataforma, e não em desenvolver código novo. Ou seja, o objetivo é minimizar a quantidade de patches que o MeeGo tem que aplicar aos projetos do upstream, evitando o acúmulo de patches que sirvam a outros propósitos que não sejam a integração e a estabilidade de uma nova versão.

Por fim, o MeeGo apresenta um desafio à comunidade. Afinal, como única distribuição Linux hospedada pela própria Linux Foundation, o MeeGo pode ser interpretado como uma ameaça às ofertas de Linux móvel de outros membros da Linux Foundation, como o Google.

O diretor-executivo Jim Zemlin diz que a Linux Foundation tem um longo histórico de colaboração com a indústria em iniciativas técnicas, legais e comunitárias, e cita outros concorrentes diretos, como a Red Hat, o Ubuntu e a Novell, que participam voluntariamente em projetos em conjunto e se beneficiam do trabalho. O trabalho da Linux Foundation é proteger o ecossistema e a comunidade, diz ele, e ao acolher o projecto MeeGo ela irá fornecer um fórum neutro para o progresso no desenvolvimento, nas especificações e na gestão. Isto torna o MeeGo semelhante a outros projetos da Linux Foundation, acrescentou ele, como o Linuxprinting.org, o Carrier Grade Linux, a acessibilidade no Linux e a Linux Standard Base, entre outros.

Não há como negar que o mercado móvel é um alvo de prioridade máxima para a comunidade Linux. Fãs do Android, do webOS, e do ChromeOS podem ver o MeeGo como uma ameaça, mas se ignorarmos as marcas estampadas em cada produto, o campo de jogo não é diferente daquele no qual as distribuições Linux para desktop e servidores competem: todos têm acesso ao kernel, ao mesmo subsistema gráfico e aos mesmos utilitários e ferramentas. Nenhum dos concorrentes está em desvantagem técnica.

O que faz do MeeGo único na linha móvel é o fato dele seguir o modelo do desktop Linux tão de perto. Individualmente, os projetos Moblin e Maemo usaram isso como vantagem, erguendo rapidamente comunidades e produtos robustos. É provável que seus esforços combinados sigam o mesmo esquema; se outras pilhas móveis menos abertas baseadas no Linux acharem que suas vendas estão ameaçadas pelo MeeGo, a melhor alternativa para elas seria mudar seu estilo de jogo.

Créditos a Nathan Willislwn.net
Tradução por Roberto Bechtlufft <info at bechtranslations.com.br>

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X