Como trabalhar com pacotes Snap no Linux

Conteúdo

Quando você instala pacotes de software Linux com snap, você pode dizer adeus ao inferno da dependência e quebrar outros aplicativos que funcionam. Os pacotes Snap foram originalmente projetados para o Ubuntu, mas agora eles estão disponíveis em uma variedade de distribuições Linux.

O que são pacotes Snap?

No passado, instalar aplicativos no Linux foi uma experiência potencialmente frustrante. Gostaria de instalar algo apenas para encontrar uma determinada biblioteca ou outra dependência que está faltando ou desatualizada. Depois de, iria procurar o recurso ausente e instalar, apenas para encontrar outro aplicativo que dependesse da versão da biblioteca que você acabou de substituir. Consertar um, quebrar um, repita.

Isso melhorou com melhores sistemas de gerenciamento de pacotes, O que apto, dnf, e pacman. Apesar disto, você ainda enfrenta dificuldades se precisar instalar diferentes versões do mesmo aplicativo. O, se você usar dois aplicativos que entram em conflito porque estão vinculados a versões específicas, Mas diferente, de uma biblioteca.

Uma solução para esses problemas é o empacotamento de aplicativos e os sistemas de implantação.. Rápido é um dos mais populares. É baseado em um sistema de empacotamento e implementação chamado Click, datando de Ubuntu Touch iniciativa. AppImage e Embalagem plana são outros que eu poderia ter encontrado.

Esses sistemas encapsulam o aplicativo junto com dependências e outros requisitos em um único arquivo compactado.. Depois de, o aplicativo roda em uma espécie de minicontêiner. É isolado e separado de outras aplicações. As bibliotecas e outros recursos com os quais o aplicativo está empacotado ou de que precisa estão disponíveis apenas para ele.

Eles não são instalados no sentido tradicional, então eles não geram nenhum problema com outros aplicativos que requerem diferentes versões dos mesmos recursos. Você pode até instalar e executar aplicativos que precisam de versões de biblioteca conflitantes porque cada aplicativo está em sua própria sandbox..

Apesar disto, se eles não forem instalados da maneira usual, Como você lida? Nós vamos, arquivo de pacote único é baixado, descompacte e monte como um SquashFSsistema de arquivo virtual. Em seguida, é apresentado como um ambiente virtual. Tudo isso acontece nos bastidores. Tudo o que você saberá é que instalou um aplicativo e, agora, tem acesso a isso.

Desde já, porque cada arquivo de pacote deve conter todos os recursos que o aplicativo precisa, os arquivos do pacote podem ser grandes. Também é fácil duplicar um recurso que você instalaria regularmente apenas uma vez., O que MySQL o apache. Se dois diferentes snap aplicativos requerem os mesmos recursos, cada um traz sua própria cópia.

Apesar disto, isso é uma troca pela simplicidade de instalação e eliminação de conflitos de recursos.

Instalação Snapd

Snappy foi introduzido com o Ubuntu 16.04, então, se você estiver executando essa versão ou posterior, você está pronto para começar. Em nossa maquina, Snappy estabeleceu-se em Manjaro 18.04, mas tivemos que instalá-lo no Fedora 31.

snap é o nome dos arquivos do pacote e o comando que você usa para interagir com eles. Nos bastidores, a snapd daemon também é o nome do pacote que você precisa instalar se ainda não tiver o Snappy no seu computador.

Instalar snapd no Fedora, digite o seguinte comando:

sudo dnf install snapd

Se você precisar instalá-lo no Manjaro, use esses comandos:

sudo pacman -Sy snapd
sudo systemctl enable --now snapd.socket

Você pode usar o snap version comando para ver a versão do snap cliente, snapd daemon e número de série do software. O nome e a versão da sua distribuição Linux e a versão do kernel também serão exibidos.

Escreva o seguinte:

versão instantânea

Instalando pacotes instantâneos

É um procedimento bastante simples instalar um snap pacote. Você pode usar snap procurar snap pacotes e depois instale o que você deseja.

Escrevemos o seguinte para pesquisar e instalar o editor de imagens gimp:

Encontre gimp

snap busca coincidencias con la pista de búsquedagimpy devuelve sus resultados. Ele encontrará qualquer coisa que corresponda ou mencione seu termo de pesquisa.

Para instalar um dos pacotes, nós usamos o valor de Name coluna, como é mostrado a seguir:

sudo snap install gimp

À medida que descarrega, o número da porcentagem concluída aumenta e uma barra de progresso desliza da esquerda da janela do terminal. Quando a instalação estiver completa, uma mensagem aparece (como é mostrado a seguir) informando que o pacote foi instalado.

Você pode usar o df comando para verificar capacidade e uso dos diferentes sistemas de arquivos configurados em seu computador Linux. Se canalizarmos sua produção para grep comando y buscamosgimp”, isolar a entrada do pacote acabamos de instalar.

Nós escrevemos o seguinte:

df | grep gimp

Isso nos mostra que o pacote instantâneo foi montado como se fosse um sistema de arquivos. O ponto de montagem está no snap diretório aqui: /snap/gimp/252. o “252” es el número de lanzamiento de esta versión de gimp.

RELACIONADO: Como usar o comando grep no Linux

O sistema de arquivos aparece como: /dev/loop18. Os arquivos de dispositivo de loop são usados ​​para tornar os arquivos normais acessíveis como dispositivos de bloco. Em geral, são usados ​​para montar sistemas de arquivos em imagens de disco. Para este caso, eles estão montando o SquashFS sistema de arquivos dentro snap pacote. o “18” significa que este es el 18 /dev/loop arquivo de dispositivo em uso neste computador Linux.

Podemos usar o df comando para verificar isso rapidamente. Nós vamos usar o – t (Gentil) opção de limitar a saída para SquashFS apenas tipos de arquivo.

Nós escrevemos o seguinte:

df -t squashfs

O montado SquashFS os sistemas de arquivos são listados. UMA /dev/loop O arquivo do dispositivo lida com cada, e aqui está 18 deles.

Cada sistema de arquivos é montado em um diretório dentro do /snap diretório. Apesar disto, isso não significa que haja 18 snap pacotes instalados neste computador. Esta é uma distribuição Ubuntu, então alguns snap Os pacotes são instalados imediatamente e acabamos de instalar outro.

Ao mesmo tempo, quando instalar snapd, instale alguns kernels snap pacotes para lidar com as necessidades de outros snap pacotes.

Podemos usar o snap list comando, como é mostrado a seguir, para listar os instalados snap pacotes:

lista instantânea

A saída foi um pouco ampla, então o final das listagens é mostrado abaixo.

Aqui está a lista completa:

Name                 Version                    Rev   Tracking  Publisher    Notes
core                 16-2.43.3                  8689  stable    canonical*   core
core18               20200124                   1668  stable    canonical*   base
gimp                 2.10.18                    252   stable    snapcrafters -
gnome-3-26-1604      3.26.0.20191114            98    stable/…  canonical*   -
gnome-3-28-1804      3.28.0-16-g27c9498.27c9498 116   stable    canonical*   -
gnome-calculator     3.34.1+git1.d34dc842       544   stable/…  canonical*   -
gnome-characters     v3.32.1+git3.b9120df       399   stable/…  canonical*   -
gnome-logs           3.34.0                     81    stable/…  canonical*   -
gnome-system-monitor 3.32.1-3-g0ea89b4922       127   stable/…  canonical*   -
gtk-common-themes    0.1-28-g1503258            1440  stable/…  canonical*   -

Como você pode ver, existem 10 pacotes instantâneos instalados, não 18. Apesar disto, esses 10 pacotes resultaram em 18 SquashFS sistemas de arquivos. As colunas da tabela são autoexplicativas, mas aqui estão alguns esclarecimentos:

  • Nome: Nome snap pacote que foi instalado.
  • Versão: O número da versão do software no snap pacote.
  • Rvdo: O número de revisão do snap pacote.
  • Acompanhamento: O canal leste snap monitores de pacote para atualizações. Existem quatro:
    • Estábulo: O canal padrão. Como o nome implica, este canal contém os pacotes mais estáveis.
    • Candidato: Este canal é menos estável, mas está muito perto disso porque contém software de nível de candidato à versão, que é um código completo. Faça os testes finais antes de passar para o canal estável.
    • Beta: Este canal apresenta qualidade de ciclo de desenvolvimento tardio, mas não é garantido que seja estável.
    • Deve: Para os primeiros testadores de compilação. Você não deve usar este canal para trabalhos importantes ou em um computador de produção. Aqui estão dragões!
  • editor: A pessoa, empresa ou organização que publicou o snap pacote. Se fosse um editor verificado (e sua janela de terminal suporta Unicode), você verá uma marca de seleção verde ao lado do nome do editor. Se você não pode mostrar uma marca de seleção, você verá um asterisco (*).
  • Notas: Quaisquer comentários ou informações adicionais aparecerão aqui.

Canais rápidos

Você pode usar o info opção para obter uma descrição de um snap pacote.

Para faze-lo, nós escrevemos o seguinte:

snap info gtk-common-themes

Podemos ver qual canal está rastreando o pacote e a versão do software no snap pacotes em cada um dos quatro canais. Na maioria das circunstâncias, deve permanecer no canal estável.

UMA snap El paquete se comprueba cuatro veces al día para ver si hay una versión más reciente del software disponible en el canal que está viendo orastreando”. Se você quiser mudar de canal snap pacote de trilha, você pode usar o refresh e --channel opções.

Para faze-lo, nós escrevemos o seguinte:

sudo snap refresh gtk-common-themes --channel = beta

Se houvesse uma versão mais recente do software disponível, iria instalar, mas não foi o caso aqui. Apesar disto, a snap o pacote agora está rastreando o canal beta. Assim que uma nova versão beta for lançada, downloads e atualizações automaticamente.

Você pode usar o --list opção de verificar se há atualizações disponíveis para qualquer um dos snap pacotes instalados no seu computador.

Para faze-lo, nós escrevemos o seguinte:

sudo snap refresh --list

Ele dirá se algum dos canais snap os pacotes em seu computador que eles estão rastreando contêm versões de software mais recentes.

Se uma versão mais recente do software estiver disponível, você pode usar o refresh opção, como é mostrado a seguir, forçar manualmente uma atualização:

sudo snap refresh gtk-common-themes

Excluir um pacote instantâneo

Para desinstalar um snap pacote, você pode usar a opção de exclusão, como é mostrado a seguir:

sudo snap remove gimp

A folha de dicas instantâneas

Usar pacotes instantâneos é bastante simples, mas compilamos uma lista de alguns comandos que irão ajudá-lo:

  • Para procurar um pacote: snap find package_name
  • Para instalar um pacote: sudo snap install package_name
  • Para ver todos os pacotes instalados: snap list
  • Para obter informações sobre um único pacote: snap info package_name
  • Para mudar o canal que um pacote rastreia para atualizações: sudo snap refresh package_name --channel=channel_name
  • Para ver se as atualizações estão prontas para os pacotes instalados: sudo snap refresh --list
  • Para atualizar manualmente um pacote: sudo snap refresh package_name
  • Para desinstalar um pacote: sudo snap remove package_name

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.