Como posso instalar um pacote Snap a partir de um arquivo local

Como posso instalar um pacote Snap a partir de um arquivo local

Eu tenho um programa de uso único escrito em Python.

O Snapcraft pode empacotá-lo? Como faço para instalar o pacote localmente? Existe algo como GDebi para Snaps?

Responder1

Aqui está um exemplo de instalação local de um snap do Snap Store (fonte).

No entanto, isso não funcionará para você - por que não funcionará e o método que você precisa usar estão detalhados abaixo.

$ snap download hello-world
Fetching snap "hello-world"
Fetching assertions for "hello-world"

$ sudo snap ack hello-world_27.assert 

$ sudo snap install hello-world_27.snap
hello-world 6.3 from 'canonical' installed

$ snap list
Name                   Version                   Rev   Developer      Notes
<snip>
hello-world            6.3                       27    canonical      -
  • Não há nada como o GDebi para instantâneos.
  • Como você já possui o snap local, obviamente você pula a primeira etapa. Você não precisa baixá-lo.
  • Como você fez o snap, não há arquivo .assert, então pule a segunda etapa também.
  • Finalmente, como o padrão do Snaps é a segurança usando assinaturas... mas a sua não está assinada... você deve desabilitar essa proteção na terceira etapa usando o --dangeroussinalizador.

Portanto, seu método para um Snap não assinado feito localmente será:

$ sudo snap install /path/to/my-snap.snap --dangerous

Responder2

TLDR:

se você baixou o arquivo, por exemplo, abc.snapna pasta atual,

tentar:

snap install ./abc.snap --dangerous

Explicação:

os snaps são normalmente assinados com a chave privada do editor. Quando o pacote é assinado, tudo o que significa é que ele foi preparado por alguém que possui uma chave privada. Isso literalmente não significa mais nada. Isso não significa que o pacote seja seguro para o seu computador. Isso não significa que o pacote contém o que diz conter. Tudo o que isso significa é que alguém o assinou com sua chave privada.

Se você tiver um .snaparquivo vazio que pode ou não estar assinado, você pode pular a verificação de assinatura usando --dangerous. Na verdade, não há nada mais perigoso nisso do que confiar o conteúdo do seu computador a uma pessoa aleatória na Internet.

Os pacotes disponíveis na snap store oficial são assinados, para que caso aconteça alguma merda real, seja possível rastrear a conta de onde o pacote foi postado. Isso pode impedir que pessoas boas publiquem pacotes ruins. Isso não significa que os pacotes sejam seguros. Provavelmente não irá dissuadir os maus atores.

informação relacionada