unsnap, uma ferramenta para migrar pacotes snap para flatpak
O Snap é um sistema de pacotes desenvolvido pela Canonical para o Ubuntu, que pode ser implementado em sistemas operacionais que utilizam o kernel Linux e o sistema de inicialização systemd.
Este sistema de pacotes é apresentado como um sistema "universal", que a Canonical promoveu a tal ponto que, nas novas versões planejadas para o Ubuntu, abandonou o suporte ao Flatpak e, assim, apostou tudo em seu próprio sistema de pacotes.
Por outro lado, a Canonical também decidiu lançar uma versão do Ubuntu inteiramente em pacotes Snap. Essa notÃcia não foi bem recebida por muitos e criou uma divisão na comunidade, já que os pacotes Snap não são universalmente aceitos.
Em resposta, surgiram diversos movimentos para promover o uso de pacotes Flatpak. Um dos projetos que apoiam o formato Flatpak é o unsnap, que está sendo desenvolvido como uma ferramenta para converter sistemas baseados em Ubuntu do uso de pacotes snap para pacotes flatpak.
O utilitário não apenas substitui o gerenciador de pacotes snap por flatpak, mas também seleciona e instala contrapartes flatpak para pacotes snap já instalados no sistema. No caso ideal, o usuário pode obter um conjunto de aplicativos completamente semelhante, mas instalado no formato flatpak.
sobre desapertar
A migração é realizada em várias etapas. Na primeira etapa, o unsnap gera um conjunto de scripts shell que descrevem as operações de substituição. Levando em consideração o estado atual do sistema, scripts separados são criados para fazer backup do ambiente snap, instalar o gerenciador de pacotes flatpak, ativar os repositórios flatpak, instalar equivalentes flatpak para os pacotes snap já presentes no sistema e remover os pacotes snap e o toolkit snapd do sistema. Antes de executar os scripts gerados automaticamente, o usuário pode editá-los conforme necessário.
O projeto está sendo desenvolvido por Alan Pope , um dos desenvolvedores do sistema Snap, que deixou a Canonical em 2021 após 10 anos na empresa. O conjunto de ferramentas ainda está em fase experimental (pré-alfa) e é limitado ao suporte do Ubuntu.
Dos projetos relacionados, o autor do unsnap menciona custom-desktop (um conjunto de scripts para converter a composição de um ambiente Ubuntu já instalado) e deb-get (um análogo do apt-get para trabalhar com pacotes deb localizados em repositórios de terceiros ou em sites).
Além do gerenciador de pacotes, o projeto deb-get fornece metadados de pacotes de terceiros prontos para instalação que podem ser usados ​​para substituir pacotes snap por pacotes deb.
O Unsnap pode executar automaticamente um conjunto de scripts gerados automaticamente:
- 00-backup : Execute o snap save para cada snap instalado que está sendo migrado
- 01-install-flatpak : Se ainda não estiver instalado, instalará o gerenciador de pacotes flatpak
- 02-enable-flathub: se não estiver ativado, adicionará o local remoto do flathub no flatpak
- 03-install-flatpaks : instala flatpaks equivalentes para cada plugin identificado
- 04-remove-snaps : remove snaps para os quais flatpaks foram instalados
- 99-remove-snapd : remove o snapd sozinho, o que removerá todos os pacotes de snap
É mencionado que, no futuro, o Unsnap planeja oferecer suporte a outras distribuições compatÃveis com snap, como Manjaro, Linux Mint, Zorin, Debian, Fedora, Pop_OS!, KDE Neon, Raspbian, CentOS e Elementary OS. Os usuários também podem se interessar pela lista de pacotes analógicos preparados pelo projeto nos formatos snap e flatpak.
Como instalar o Unsnap no Ubuntu?
Para os interessados ​​em poder instalar esta ferramenta em seu sistema, devem saber que a instalação é bastante simples e basta abrir um terminal e nele digitarão o seguinte:
git clone https://github.com/popey/unsnap
cd unsnap
./unsnap
O Unsnap funciona em duas etapas. Inicialmente, o Unsnap gera um conjunto de scripts responsáveis ​​pela migração dos Instant Packages para o Flatpak. Esse recurso permite que os usuários visualizem e, se necessário, editem os scripts antes da execução, para validá-los ou modificá-los de acordo com suas necessidades.
Depois que os scripts são gerados, os usuários podem executá-los em sequência para concluir o processo de migração.
Ou, como mencionado no inÃcio, se preferir a execução de todos os scripts, basta digitar:
./unsnap auto
Por fim, vale ressaltar que, como em qualquer processo de migração, recomenda-se fazer um backup de informações importantes, pois, como tal, está excluindo e instalando aplicativos, o que também envolve a exclusão de informações.
Se tiver interesse em saber mais, você pode encontrar os detalhes no seguinte link.