AppImage, Flatpak ou Snap?

AppImage, Flatpak ou Snap?

Qual das 3 novas alternativas de empacotamento de software no Linux é a melhor? Quem já utilizou Linux há alguns anos não reconheceria as distribuições em seu estado atual. A evolução foi intensa e numa velocidade assombrosa, nisso novos formatos de empacotamento apareceram no cenário, são eles: AppImage, Flatpak e Snap.

Não sabe o que é um AppImage, Flatpak ou Snap? Aqui no blog temos diversos artigos, explicando sobre essas novas tecnologias e ensinando como utilizá-las em sua distro Linux.

Se existe algo em que um novo usuário de Linux, quem sabe um antigo que não acompanhou esses anos, vai se deparar, é com as facilidades de se obter programas e instala-los no sistema.

Para especificamente usuários Ubuntu, os PPAs, que antes eram indispensáveis na maioria dos casos, atualmente tornaram-se dispensáveis (em muitos casos). Isso graças a novas formas de distribuição de softwares na plataforma do pinguim.

A dúvida que paira no ar: Qual o melhor entre os 3? Isso é uma questão delicada. Mas traçando um perfil, pode ficar mais fácil qual alternativa indicar, tendo em vista o usuário em questão.

appimage-linux-pacote

AppImage – Vantagens

Se você já utilizou algum software portable no Windows, sabe o quão prático pode ser uma aplicação portátil, sem a necessidade de baixar complementos ou instalar em seu sistema, muitas vezes executando-os direto do seu pendrive. Pois bem, resumidamente essas são algumas vantagens do AppImage.

Outra facilidade é no pós-install, não necessitando o download da aplicação, isso é uma “mão na roda” para quem tem Internet ruim.

AppImage – Contras

Alguns contras são: Não ter downloads automáticos da aplicação, e nem sempre uma maior integração ao sistema, seu tamanho normalmente será maior que um “.DEB/.RPM”.

AppImage – Para quem é:

É uma ótima opção para utilizar softwares, que nem sempre você queira atualizar por algum motivo. No meu caso, uso o Kdenlive neste formato, pois tenho maior controle sobre sua versão, posso testar outras sem impactar meu sistema operacional, além de poder editar algum vídeo caso esteja numa máquina sem acesso a Internet que não tenha o Kdenlive.

flatpak-pacote-linux

Flatpak – Vantagens

Se você quer utilizar os softwares nas versões atuais sem adicionar um repositório instável ao seu sistema, o Flatpak é perfeito nestes casos. 

Com um número relativamente grande de aplicações, o Flatpak tem se tornado o queridinho de projetos Open Source, a comunidade parece estar cada dia abraçando este formato. Por exemplo o Emulador de Nintendo 3DS, Citra. Recentemente adotou o Flatpak como formato de distribuição oficial para o Linux.

Algumas vantagens dos Flatpak são: diversas aplicações neste formato, segurança ao utilizar um app novo, mesmo instável não afetará seu sistema. Não terá problemas com erros de dependências. Melhor integração com o sistema, seja na utilização ou visual. Inclusive é possível instalar diversos temas ao seu sistema em Flatpak.

Flatpak – Contras

Para obter as vantagens de um sistema livre de instabilidades, ou erros de dependências, o Flatpak teve que adotar uma estratégia. Utilizar RUNTIMES, onde as dependências dos softwares são embutidas. Isso evita que cada programa acompanhe bibliotecas junto a eles, como no caso dos AppImage. O “calcanhar de Aquiles” do Flatpak, com o tempo você acaba tendo muitas Runtimes no sistema, pois nem todo app utiliza a mesma, isso depende de sua versão, ou quem e como foi desenvolvido.

Então se você tem uma Internet lenta, ou espaço em disco escasso. Talvez os Flatpaks não sejam a melhor escolha.

Flatpak – Para quem é:

Se você não gosta de ir no site das aplicações procurando por atualizações, quer utilizar aplicativos em versões mais recentes, não ter problemas com dependências quebrando seu sistema, uma integração visual e na utilização do sistema.

Tem espaço suficiente para instalar as aplicações, e uma Internet razoável para efetuar a instalação dos apps. O Flatpak é uma ótima opção.

snap-pacote-linux

Snap – Vantagens

O Snap possui muitas características dos Flatpak, como o fato de ser SANDBOX, e as aplicações não interferirem no seu sistema operativo. Acompanhando todas as vantagens, de poder utilizar o app sem o medo de danificar o sistema, por conta de alguma dependência. E as aplicações em regra não precisarem de bibliotecas adicionais.

Um ponto a se observar, é que o Snap utiliza uma outra forma para suprir as dependências dos programas. Cada aplicação vem com bibliotecas embutidas, e as mais comuns estão no CORE, algo que funciona parecido com as RUNTIMES do Flatpak. Com um diferencial, esse Core será para todas as aplicações.

Snap – Desvantagens

O Snap parece ter uma boa integração com o tema oficial do Ubuntu, já nas diversas distribuições Linux, ele poderá ficar com uma cara de Windows 95. Se você é perfeccionista, isso pode lhe irritar um pouco (risos).

A sua forma de sanar dependências dos programas, pode ser em alguns casos uma vantagem sobre os Flatpaks, e em outras não. Isso dependerá da quantidade, e versão das aplicações que serão utilizadas.

Outra coisa é o arranque inicial das aplicações em Snap, não parecem ser tão ágeis como as demais alternativas, ao menos na versão atual, a Canonical vem trabalhando nessas melhorias e a versão mais recente do snapd, o daemon responsável por lançar os softwares em Snap, está conseguindo lançar as aplicações com maior velocidade e menor tempo de resposta.

Snap – Para quem é:

Se você é perfeccionista, e não suporta a possibilidade de algumas aplicações, com um visual de “Windows 95”. Ou uma Internet ruim, não tem paciência para downloads maiores (isso vale para os Flatpaks também). O Snap não é para você.

Então qual é o melhor?

A real é que não existe o melhor ou pior, cada caso tem um formato, que supre um tipo de demanda, e dependendo do usuário, as 3 formas serão utilizadas. Este é meu caso, utilizo várias aplicações em Flatpak, outras em AppImage e algumas em Snap. Confesso que o arranque um pouco demorado e o visual do Snap, não me deixam utilizar mais aplicações como gostaria.

Mas isso é questão de tempo, pois essas tecnologias estão evoluindo cada vez mais, e daqui algum tempo, essas desvantagens que listei, possam nem existir.

Alguns boatos rondam as comunidades, um deles é que formatos como Flatpak e Snap, são ruins pois quem tem o armazenamento limitado, como um SSD de 120GB, não poderão utilizá-los.

Pois bem, isso é um mito. Por mais que os Flatpaks e Snaps, demandem uma quantia superior a outros pacotes como DEB/RPM, a sua utilização é viável no hardware atual.

Se seu HD tem espaço para o Windows e suas aplicações, não terá dificuldades com os Flatpaks e Snaps…

E aí, qual dos 3 você mais utiliza? Conte-nos nos comentários, o que lhe impede de usar um ou outro, e quais melhorias gostaria de ver nestes novos formatos.

Até a próxima, nos vemos SISTEMATICAMENTE, em outro post.


Newsletter Diolinux
Talvez Você Também Goste
Novidades nos testes do kernel Linux
Continue lendo

Novidades nos testes do kernel Linux

Em recente reunião do Linux Kernel Plumbers, que ocorreu em Lisboa, Portugal, o tópico “automação de testes para o kernel Linux” foi discutido. Os principais desenvolvedores do Linux uniram-se com o objetivo de empregar esforços em uma estrutura de testes sólidos: o KernelCI. Agora na Open Source Summit Europe, em Lyon, França, o KernelCI passa a ser um projeto da The Linux Foundation e receberá os investimentos e recursos necessários.