Snap - O quão grandes são estes pacotes em 2020?

Confira o post completo no blog: https://diolinux.com.br/2020/06/snap-vs-flatpak-vs-deb-qual-pesa-mais-2020.html

Snap é um formato de empacotamento que está ficando mais popular graças ao Ubuntu e a Canonical, mas isso não quer dizer que formato agrade a todos, uma das reclamações mais comuns é sobre o seu tamanho, as será que isso realmente compromete a usabilidade?

4 Curtidas

Bom, serei o primeirão a comentar
Acho que os problemas, comuns a flatpaks e a snaps, são 2:

  1. Integração com os sistemas - muita gente reclama de problemas com fontes, temas e ícones que não se combinam, somem etc. Comigo, particularmente, isso nem é tão problemático, os temas e fontes até que funcionam, o que me incomoda mais é a incoerência nos ícones, mas nada que seja tão bizarro. Pior é instalar algo que fica sem ícone na Dash do que um que fica com ícone diferente do pacote instalado;
  2. Problemas com leitura em discos em NTFS - eu sou um usuário de dual boot com Windows e inicio meu Linux (Ubuntu 20.04) com a minha partição de dados NTFS sempre montada. Nesse sentido, prefiro os pacotes .deb, já que eles me permitem gravar direto no meu “D:”, tanto flatpaks quanto snaps tem dificuldade de reconhecer - ou simplesmente impedem, dependendo das permissões que as configs do Gnome apresentam - meu disco em NTFS. Por isso, quando possível - especialmente quando o repositório está disponível -, prefiro instalar o pacote .deb. Atualmente, quem mais me incomoda é o Signal Desktop. No site deles, o PPA é antigo, o que dá pau nas atualizações, aí instalei o flatpak (se não me engano, mas pode ser o snap, nesse caso tanto faz) e ele não apenas não me deixa gravar no “D:” como não deixa brecha para configurá-lo para reconhecer o disco NTFS. Como o Signal é para dados sensíveis mesmo, ficar gravando na /Home e depois copiando para o “D:” é bem chato.
    No mais, acredito que eles serão úteis no futuro, com sua atualização precisando ser melhor integrada ao OS - nisso, os AppImages estão bem atrás, já que eles não se atualizam por linha de comando, pelo menos até onde descobri.
    Espero não ter falado bobagem e ter ajudado! :smiley:
1 Curtida

creio que estes problemas tenham diminuído drasticamente com flatpak’s, apesar de que sempre haverá problemas de integração de uma app/DE mesmo com .deb/.rpm por conta da falta de padronização de temas etc…

2 Curtidas

O principal problema com esse tamanho extra (o que no caso do snap é relativamente baixo e tem a vantagem sobre o flatpak de permitir uma instalação real full offline é que a Internet no Brasil não é satisfatória pra 90% da população (isso segundo a Endless), sendo assim, considerando que os sistemas geralmente não vem com nenhuma runtime ou snap de dependência pré instaldo, imagine baixar 2 GB pra rodar um app de 36 MB com uma Internet de 1Mb/s a pessoa passa o dia todo baixando SE der sorte ela consegue usar o app a noite perto da hora de dormir (isso sem contar nos processadores pra fazer o deploy do ostree ou fazer o mount dos squashfs)… o problema principal do tamanho não é em disco, é pra baixar

1 Curtida

A questão dos temas, fontes e demais é porque (os snaps tem como configurar e os flatpaks como fazer uma gambiarra, tem a pasta /usr/share que é onde ficam 90% das vezes esses recursos sobreescrita pela pasta “share” da runtime (ou connect) uma maneira bem simples de resolver (e eu sei porque eu testei) é montar pelo menos a pasta de themes, fonts e icons em um local diferente na sandbox (tipo a saida de um mktemp -d) e apontar o caminho na variável ambiente XDG_DATA_DIRS, mas aparentemente acessar as recursos visuais do sistema é uma brecha enorme de segurança para os devs dos dois sistemas

1 Curtida

Tenho duas perguntas:

  1. É fácil (para um usuário comum) instalar offline programas empacotados em Flatpak e Snap?
  2. No caso do Snap, se essa instalação offline for possível, não seria fácil para os mantenedores de distribuições criarem seus próprios servers para seus Snaps já que esse tipo de pacote não é tão dependente dos servidores da Canonical?

Putz, tem casos assim?

2 Curtidas

Além da brecha de segurança, acho que 90% dos usuários de distros para desktop (tiro os 10% que usam Arch, OpenSUSE e assemelhados) não teria conhecimento, disposição ou coragem de fazer o que você propõe… o que deixa a tarefa de harmonizar flatpaks e snaps para os desenvolvedores de aplicativos, DE’s e distros, não é mesmo?

2 Curtidas

Bom snaps sim eu até demontrei em outro post, flatpaks são um mais complicados, os comandos não são nem um pouco intuitivos

Mas é, eu mesmo desenvolvi um “snapd” alternativo com suporte a delta updates, mas acho que a questão é, compensa? Eu penso que não, a maioria dos que critica o snap por isso e apoia o flatpak sequer cria seus próprios repositórios flatpak (a esmagadora maioria pelo menos) “sugam” tudo do FlatHub o que ná prática dá no mesmo, eu penso que só criticam a Canonial “por esporte” mesmo

Infelizmente não é pouco, a esmagadora maioria que tem internet está subservida

Essencialmente sim

1 Curtida

Mas o conteúdo já pego por um snap não poderia ser reaproveitado por outro? Vamos dizer o seguinte, têm dois programas em que, cada um dos dois, pese 20MB em si, mas cada um traga uma bagagem (o pacote snap em si) que totalize 2GB (no caso, 1.98GB seria de dependências se minha conta não está errada) e eles tenham 1GB de arquivos em comum. Ou seja, o snap1 tem 2GB, o snap2 tem 2GB e ambos possuem 1GB de arquivos em comum.

Ao fazer o download do primeiro programa, baixo e instalo 2GB de conteúdo. Quando eu for baixar o snap2 (que tem 1GB de software em comum com o primeiro), o que aconteceria?

  • Eu baixaria 2GB do mesmo jeito, mas só o 1GB restante seria instalado?
  • Eu baixaria 2GB do mesmo jeito e tudo isso também seria instalado no meu sistema?
  • O servidor é inteligente, verifica o que já tenho nas minhas pastas de snaps e cria um snap de 1GB para ei baixar?

é assim que funciona os flatpaks

2 Curtidas

Tanto no caso dos Flatpaks ou Snaps, existem sim o compartilhamento de dependências, isto para evitar a duplicação de pacotes desnecessários. Esse comportamento que você propos já é o padrão, no caso.

2 Curtidas

Fuja de PPAs ainda mais antigos, vai por mim. São os “quebradores” nº 01 de sistemas Linux.

1 Curtida

Para mim OpenSuse é uma distro amigável para o público geral, não se enquadra no mesmo perfil do Arch.

1 Curtida

Não sabia mesmo… achei que fosse mais para devs e gestores de sistemas e servidores.
É que na minha lista estão as mais conhecidas, como Ubuntu e sabores, Mint, Zorin, Manjaro, Elementary, Deepin, Endless…

Sim, eu aprendi isso - por sorte, não houve maiores danos ao sistema no meu caso, bastou tirar as PPA’s erradas e reinstalar o Signal por Flatpak

Se o snap dependência já tiver sido baixado ele não baixa de novo, si o outro snap, por exemplo, o photogimp do @pedro_ermarinho depende do core18 se não me engano, se quando você for instalar o photogimp snap você já tiver o core18, só o snap do photogimp será baixado

2 Curtidas

O mesmo ocorre com os Flatpaks, isso pelo artigo do blog Diolinux

1 Curtida

Legal o artigo, rapaz eu não vejo tanto problema assim, prefiro que meu sistema fique estável ( especialmente se for de estudo e trabalho) por mais que custe um pouco a mais de espaço.

Sugestão: poderia ter um gráfico já que o artigo é meio que um ‘benchmark’ de formas de instalação assim fica melhor pra ver essa comparação

1 Curtida

Parabens pela postagem excelente conteudo abordado