Para muitos de nós que realmente começamos nossa jornada Linux usando o Ubuntu Linux, que pelas estatísticas é a distribuição Linux mais popular e mais usada no momento, nos familiarizamos com o download, instalação e uso
deb formato de pacote para Debian Linux, no qual o Ubuntu é baseado e muitas outras distribuições Linux, como o popular sistema operacional de teste de penetração Kali Linux , focado em jogos SteamOS, distribuição voltada para desktop desenvolvida por Raspberry Pi Foundationpara uma família de pequenos computadores de placa única de baixo consumo de energia, entre outros.
Como um novo usuário do Linux, você perceberá o grande número de distribuições disponíveis com várias versões e, mais ainda, a dificuldade de trabalhar com diferentes formatos de empacotamento de software e lidar com dependências ao mesmo tempo.
Mas na versão mais recente do Ubuntu Linux, Xenial Xerus LTS, a Canonical introduziu um novo formato de empacotamento de software e ferramentas chamadas Snap, que serão usadas juntamente com deb formato de embalagem. Em um anúncio no início deste ano, feito por Olli Ries da Canonical, ele elaborou como a tecnologia por trás do Snaps realmente surgiu, como ela existirá e funcionará junto com o antigo Debian sistema de empacotamento de software, seu significado e funcionalidade geral e muito mais.
Também existem outros novos sistemas de empacotamento de software já funcionando para combater o Snap no jogo, e estes são Flatpak e AppImage, vamos obter uma compreensão clara do que são essas tecnologias, como elas funcionam e onde elas literalmente se acumulam no ecossistema Linux.
O que é Snap e como funciona?
Este é um formato de empacotamento de software que agrupa software incluindo suas dependências em um único pacote, ele é instalado em um diretório separado de outros diretórios do sistema, ao contrário de outros formatos de empacotamento de software antigos, como deb
, rpm e muitos outros. Dessa forma, um pacote não causa confusão em seu sistema, reduzindo o risco de quebrar o restante do sistema Linux.
Você pode dar uma olhada em como Debian Packaging System e RMP Packing Systemtrabalho para entender como eles funcionam distintamente em comparação com o Snap. Uma propriedade vantajosa do Snap para os usuários é que ele funciona em várias distribuições Linux, incluindo Debian, Fedora, Arch, claro, Ubuntu e muitos de seus derivados, como Kubuntu, Lubuntu, Ubuntu MATE e muitos outros dessa família. Os usuários do REHL, CentOS, Elemetay OS, Linux Mint, Gentoo, OpenSUSE terão que esperar enquanto a validação está em andamento e, uma vez aprovado, eles poderão usá-lo. Ele também oferece um mecanismo seguro de gerenciamento de pacotes, pois os pacotes instalados funcionarão em um sistema isolado no Linux, o que limita os riscos de segurança que acompanham outros sistemas de empacotamento de software.
No lado dos desenvolvedores, toda a ideia de Snaps também é complementada pelo uso de Snapcraft, que permite aos desenvolvedores facilmente trabalhe em software para diferentes plataformas que são dispositivos móveis, PC, servidor e IoT, ajudando-os a agrupar software e dependências em um único pacote. Isso eliminará as dificuldades no processo de compactação e no manuseio das atualizações pelos usuários em comparação com os métodos anteriores.
O que é AppImage e como funciona?
Este também é um formato de empacotamento de software que funciona à sua maneira em comparação com os sistemas tradicionais de empacotamento de software. Ele funciona em uma analogia comparável ao Snap, sob ele, um aplicativo é agrupado com todas as suas dependências em um único arquivo, portanto, a ideia de um aplicativo é igual a um arquivo.
É tão simples e rápido usar aplicativos no formato AppImage, não há necessidade de instalar aplicativos como antes, basta baixar o aplicativo, torná-lo executável e executá-lo, tão simples quanto que. Assim como no Snap, o restante do sistema permanece in alterado e também oferece um ótimo mecanismo de aplicação de segurança no sistema do usuário. O AppImages pode ser executado fundamental e importante em qualquer distribuição Linux de desktop existente e, portanto, funciona de perto em relação a como os aplicativos são usados no Windows e no Mac OS. Pode-se pensar no AppImgaes como aplicativos Linux portáteis.
Leia também: Aplicativos Portable Linux da OrbitalApps para Ubuntu 16.04
Uma limitação deste sistema de empacotamento de software é que ele funciona eficientemente no Linux para desktop, mas os administradores de sistema que usam ambientes de desktop em seus servidores também podem tirar proveito disso. Confira como agrupar seus aplicativos no AppImages a partir deste Wiki
O que é Flatpak e como funciona?
Flatpak também é uma tecnologia relativamente nova construída a partir do zero, para permitir que os usuários instalem e executem o mesmo aplicativo de desktop em várias distribuições do Linux e com versões diferentes. Projetado e construído para isolar aplicativos uns dos outros e do resto do sistema, ele também coloca muita ênfase na implementação de segurança em um sistema host.
Ele também funciona em uma abordagem relacionada a dois formatos anteriores de empacotamento de software, o aplicativo é empacotado junto com todas as suas dependências em um único pacote, sob um aplicativo Flatpak há uma coleção de tempos de execução, uma coleção de arquivos compartilhados bibliotecas que são compartilhadas por vários aplicativos no sistema Linux. Isso significa que os usuários não precisam se preocupar com atualizações em relação às mudanças na versão da distribuição. Você pode aprender como criar, instalar e executar aplicativos Flatpak em aqui.
Após uma análise crítica e compreensão das tecnologias acima, você chegará à conclusão dos seguintes pontos importantes:
Para concluir,
Com o formato de empacotamento do software Snap do Ubuntu já sendo usado em muitas distribuições Linux, pode-se dizer que ele será adotado como uma alternativa eficiente e relevante aos antigos formatos de empacotamento, como muitos desenvolvedores e usuários de software Linux antecipando que ela se tornará a tecnologia dominante no futuro no ecossistema Linux. Uma limitação para AppImage e Flatpak será sua importância apenas em distribuições Linux para desktop.