Premissas
Honestamente, eu não sei muito sobre snap-packages - mas isso é irrelevante para esta pergunta - veja abaixo. Presumo que o sistema seja significativamente diferente do existente.
A mudança faz sentido?
Existe uma necessidade real, forte o suficiente? Ou seja - existe um novo caso de uso, importante o suficiente para desenvolver um novo formato - e a infraestrutura associada?
Não era possível alterar também o método atual para cobrir os novos casos de uso?
Ou estou perdendo o objetivo?
É possível que o que eu vejo seja principalmente marketing - novos nomes e apresentações para uma mudança técnica mínima, para ter a chance de que qualquer organismo a assuma como "nova e melhor" e que possa realmente ser usada. Além disso, pode ser que os novos pacotes sejam tão intimamente baseados no formato existente que é principalmente uma alteração na apresentação ao usuário. Essa poderia ser uma boa solução, é claro. Nesse caso, essa pergunta não teria muita relevância.
Então, espero que ainda seja útil o suficiente para responder a aspectos colaterais. Avise-me se a pergunta não for útil ou confusa para novos usuários. Fico feliz em excluí-la.
Então, por que eles existem?
fundo
Minha primeira reação foi "Isso não faz sentido!"
Isso é semelhante a uma situação em que, no site de física, alguém perguntou, infeliz, por que ninguém discute suas novas e brilhantes idéias em respostas. Parecia fortemente idéias malucas; Tão longe do conhecimento físico real que era difícil encontrar um ponto para começar. Eu escrevi uma resposta que não tocou suas idéias com uma única palavra, mas expliquei por que alguém simplesmente não discutia a hipótese de assumir idéias malucas - e não o primeiro caso disso. A resposta foi realmente acertar o ponto, eu acho.
Se minhas suposições estavam corretas, este caso é semelhante.
Mas então, talvez não - vamos ver.
fonte
Respostas:
Sim, existe uma necessidade real.
Houve uma necessidade real de algo assim desde a primeira vez que um software dependia de outro.
Vamos deixar isso claro:
Gerenciar dependências é difícil .
Há uma razão para isso ser chamado de dependência do inferno . Sistemas de empacotamento como RPM e Debian foram criados com a intenção de evitar o inferno das dependências. No entanto, alguém deve pagar o custo:
Há uma perda considerável de liberdade em ambos os métodos.
E é aí que entram os snaps: eles permitem que o desenvolvedor inclua a versão X e o sistema de empacotamento gerencie atualizações. Quem paga o custo? O usuário:
Que benefícios eu recebo em troca?
fonte
/opt
?AppArmor
já saiu para cobrir isso. mas o caminho da proteção pode ser diferente. De qualquer forma, o tópico é abordar.sudo apt-get install skype
mas depois vejo que está disponível como um piscar de olhos. Porém, quando instalei o Chromium, não fiz nada de especial para fazê-lo usar o snap. Ainda assim. Então agora eu entendo POR QUE os snaps existem, e estou feliz que eles existem. Agora estou curioso para me preocuparsudo snap install skype
?Um recurso específico dos snaps úteis que pode ser útil é a capacidade de escolher um canal para desenvolvedores que fornecem mais de um canal, como release , candidato , mestre , etc.
Por exemplo, clicar no botão Canal para
nextcloud
exibirá a caixa de diálogo na captura de tela abaixo.Os outros pontos fortes de venda são isolamento, imutabilidade e sandboxing, que são controlados por um contexto de política de segurança , que permite definir permissões por aplicativo, também chamadas de 'plugs', por exemplo:
A abordagem imita até certo ponto os pacotes de aplicativos do MacOS e o sandboxing de aplicativos do Android com permissões e provedores / receptores de conteúdo.
Agora, imagine que você precisa executar uma dúzia de aplicativos, cada um com sua própria versão de determinadas bibliotecas, sua própria versão do tempo de execução Python / Ruby / NodeJS e não deseja correr para o inferno das dependências e estragar ou poluir as bibliotecas do sistema, seu sistema Python / Node / Perl / Ruby, etc.
fonte