Conheça o Flatpak, um formato de empacotamento concorrente ao Snap Dionatan Simioni quinta-feira, 30 de junho de 2016

Estão surgindo vários projetos interessantes com o intuito de facilitar a vida de quem pretende instalar um simples pacote de software no Linux (distros em geral). Temos o Snap, desenvolvido pela Canonical para o Ubuntu e para outras distribuições, e além do AppImage, temos também o Flatpak, com uma proposta muito interessante.

FlatPak - Um concorrente ao Ubuntu Snap




O modo como os aplicativos para Linux são distribuídos está em pauta neste ano e é muito provável que os anos vindouros nos guardem algumas surpresas nestes sentido. Recentemente eu fiz um vídeo falando sobre o Ubuntu Snap e como ele poderá fazer diferença para todas as distribuições Linux que os adotarem, mas é bom que você saiba que ele não é a única solução neste sentido.

O que é o Flatpak?


O projeto Flatpak em si é antigo, anteriormente ele era conhecido como XDG-Apps, agora ele só está com um nome mais "bonitinho" e comercial. O projeto surgiu através de um dos engenheiros da Red Hat; Alexander Larsson, o criador "dessa brincadeira", almeja com o Flatpak, basicamente o mesmo que a Canonical almeja com o Snap ou seja:

- Segurança
- Estabilidade
- Portabilidade
- Praticidade

Palavras bonitas sim, mas que merecem uma explicação mais detalhada. 

O Flatpak é um modo de empacotar os softwares para Linux com todas as suas dependências inclusas, tal qual o Snap, a única diferença notável que eu percebi entre ambos, é que o Flatpak também consegue compartilhar bibliotecas existentes entre os pacotes para não duplicá-las, ao contrário do Snap, que por sua vez também tem diferenciais, como a capacidade de rodar também em dispositivos móveis e internet das coisas, isso garante que o tamanho dos pacotes Flatpak sejam consideravelmente menores.

Como funciona o Flatpak?


Se você viu o nossos vídeos sobre o Snap, vai ficar "mão com açúcar" de entender o Flatpak, simplesmente porque o conceito é o mesmo. 

Os aplicativos empacotados no formato Flatpak são "multi-distros", assim como a Canonical anunciou recentemente que o Snap também é, isso permite que o mesmo pacote de software seja instalado no Ubuntu, no Fedora, no Manjaro, em fim, qualquer distribuição, o que sem dúvidas, é muito legal!

O Flatpak também tem a capacidade de rodar as aplicações em Sandbox (tal qual o Snap), dessa forma as aplicações rodam isoladas umas das outras e fazem do sistema algo mais seguro e com uma maior facilidade em fazer downgrades, caso seja preciso, muito útil em um servidor e em desktop.

A diferença do Flatpak para o Snap neste ponto, é que o Flatpak tem a capacidade de economizar um pouco de espaço em disco, pois este empacotamento permite que bibliotecas sejam compartilhadas caso elas já existam no sistema, evitando que alguns MB a mais de espaço sejam tomados.

A equipe de desenvolvimento do Gnome por exemplo, que é muito ativa na construção do Flatpak, já disponibilizou alguns de seus softwares no formato, o LibreOffice por exemplo, também já disponibilizou imagens de seus softwares sob este novo modo de empacotamento.

Pegando o LibreOffice como exemplo, temos a versão Snap com 287 MB e a versão Flatpak com 157 MB. Podemos ver, desta forma, a diferença de tamanhos. 

Por enquanto o Flatpak pode ser rodado apenas em ambientes Gnome e KDE, o que pode limitar um pouco as coisas, entretanto isso deve mudar no futuro. O Snap precisa apenas do utilitário Snapd instalado em qualquer distro para rodar e mais alguns ajustes, o que parece ser mais simples em primeira análise.

O Flatpak também roda com maior segurança sob o servidor gráfico Wayland, apesar de rodar com o X11 também, da mesma forma que o Snap roda melhor sobre o Mir e tem compatibilidade com o X11.

E agora? Flatpak ou Snap?


Pergunta difícil, não? Mas ela tem de ser feita... e cá entre nós, do jeito que as coisas no mundo Linux são tratadas, nós não teremos um padrão tão cedo. Mir vs Wayland, Snap vs Flatpak...

Claramente o que vai fazer diferença aqui é a influência que a Canonical ou a Red Hat terão sob os desenvolvedores, é uma "briga" de gigantes e não sou eu quem vai se meter no meio disso.

Eis um fato interessante, independente de quem acabe predominando, quem tem a ganhar somos nós, usuários.

Cada um dos formatos tem suas peculiaridades, mas como projetos open source  que são, cada um pode acabar recebendo as características do outro ao longo do tempo, tornando ambos mais completos.

No momento o Snap parece ser mais portátil, por rodar não só em computadores comuns e servidores, mas em dispositivos móveis e IoT, tendo seu principal contra no tamanho dos pacotes, enquanto o Flatpak aproveita melhor o espaço em disco e possui algumas limitações quanto ao ambiente em que está rodando, vamos ficar de olho para ver qual vai evoluir melhor.

Façam suas apostas. :)

Acesse: flatpak.org
_____________________________________________________________________________
Viu algum erro ou gostaria de adicionar alguma sugestão a essa matéria? Colabore, clique aqui.




Dionatan Simioni
por Dionatan Simioni

Blogueiro, Youtuber, Escritor e Professor, usuário de Ubuntu e Android, apaixonado por games e tecnologia.

Siga-me @ Twitter | Facebook | Google Plus

comments powered by Disqus