Odeio flatpak e snap

85. Re: Odeio flatpak e snap

Mauricio Ferrari
maurixnovatrento

(usa Slackware)

Enviado em 22/03/2021 - 22:38h


Arnoold escreveu:

ruankl escreveu:

RLFontan escreveu:

- Também prefiro os gerenciadores tradicionais, mas talvez a Canonical esteja certa ao dizer que o gerenciamento tradicional de pacotes é ruim em termos de escalabilidade.


Os pacotes tradicionais são compilados com bibliotecas compartilhadas, isto é, atualizar somente 1 pacote pode ser um inferno se depender de muitas dependências, pois será necessário compilar algumas dessas dependências também. Porém, se atualizar uma dessas dependências, é bem provável que algum outro pacote que não tenha nada haver com o primeiro pacote quebre devido a incompatibilidade com essa nova versão dessa dependência. Ai é começa um caminho sem volta que só leva ao desastre.

Nesse sentido, acredito que snap/flatpak resolva essa questão para alguns pacotes (geralmente estes que são difíceis de atualizar pelo método tradicional), já que flatpak/snap incluem as bibliotecas no próprio contêiner.


Esse problema é em parte ocasionado pelas próprias distros que,
1. Não empacotam as dependências corretas, um problema geral que pode ocorrer em todas as distros.
2. Empacotam, mas não as atualizam, deixando dependências antigas no lugar, problema comum em distros fixed release como o Debian/Ubuntu.
3. Ou o oposto, dependências muito recentes para um programa antigo e legado, problema comum em distro rolling release como Arch/Manjaro.

Flatpak e snap ajudam a resolver isso em partes, mas ocasionam outros problemas. Tudo tem um custo e o custo que você paga pode ser alto.

Alguns problemas conhecidos de ambos flatpak e snap: Não obedecer o tema (snap), demorar a abrir (flatpak e snap), quebrar codecs/plugins/acentuação (flatpak e snap), não abrir (flatpak e snap), aumentar tempo de boot (snap), usar muito espaço em disco (flatpak e snap), criar bagunça no monitor do sistema e gnome-disks (snap), vários loops (snap), tornar difícil a resolução de bugs (flatpak e snap), demora na instalação (snap e flatpak), uso alto de banda (flatpak e snap), atualizações forçadas em background (snap), não ter como desativar a telemetria (snap), dependência em loja centralizada (snap), dependência no systemd (snap) entre outras coisas mais.


É por isso que eu uso o Slackware. Eu é que vou atrás das dependências. KKKKK

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento



  


86. Re: Odeio flatpak e snap

Mauricio Ferrari
maurixnovatrento

(usa Slackware)

Enviado em 22/03/2021 - 22:49h


ru4n escreveu:

bilufe escreveu:

[...]

Com relação às críticas (tamanho, velocidade), elas são em parte verdadeiras, mas um mal necessário. No entanto, as críticas são excessivas e não analisam a fundo o que está acontecendo.


Veja abaixo:

Nos Snaps e Flatpaks algo parecido acontece. O usuário vai instalar o Gimp, ele vai estar com todos os pinceis filtros e plugins num único pacote, mas uma dependência também será instalada: um pacote que instalar as bibliotecas do gnome e gtk que são necessárias para o Gimp funcionar. Quando o usuário instalar o snap do Inkscape, não será necessário instalar o snap com as bibliotecas do gnome e gtk pois ele já está instalado e assim o download será menor (terá só o conteúdo referente ao inkscape e seus recurso particulares. Se o usuário instalar um snap que usa o QT, como o Ksnip, será instalado adicionalmente outro Snap que vai oferecer uma base de bibliotecas QT que é comum a todos os Snaps de aplicativos QT, quando for instalado outro aplicativo QT não será necessário baixar tantos dados.


Ou seja, a solução encontrada para substituir o método tradicional é criar mais do mesmo com pacotes maiores (pois envolve também um contêiner) e com perca visível de performance, e adicionando também a perca da integração com o ambiente. Já usei tanto snap quanto flatpak, e a perca de performance é bem visível.

A única vantagem nessa solução é a universalização do método de instalação de pacotes, que funcionaria em qualquer distribuição que tenha o snapd ou flatpak instalado.

Falando de desenvolvimento, o problema da cultura de desenvolvimento de software é que atualmente só se foca na entrega e não mais na qualidade do software. O tempo é curto e o projeto precisa ser entregue. Nessa situação, cria-se um ambiente propício para ignorar eventuais bugs, problemas de performance, e outros problemas que a solução possa ter.

Assim nasce soluções como snap e flatpak, uma alternativa para solucionar o empacotamento de software no Linux de forma a reduzir o trabalho do desenvolvedor.
De fato o método tradicional de gerenciamento de pacotes tem problemas, e precisaria de uma forma para facilitar a distribuição de softwares comerciais. Porém a solução encontrada não pode ser pior que o problema.

Nesse sentido, eu vejo mais vantagens no AppImage, que usa o conceito de um aplicativo = um arquivo. Não exige instalação e todas as bilbiotecas necessárias são incluidas no próprio aplicativo, ou seja, é o que ocorre desde sempre nos aplicativos para Windows/macOS.

Na minha experiência, não notei perca de performance na execução de aplicativos AppImage. Acredito que o AppImage seria o ideal para a distribuição de softwares comerciais no Pinguim.


O APPIMAGE na verdade foi criado para possibilitar a criação de programas portáteis no Linux o que foi uma boa sacada, pois ele pode ser colocado em qualquer lugar mesmo. Os meus tão num HD Externo, mas raramente uso eles. mas eu curto a tecnologia dos APPIMAGEs.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento



87. Re: Odeio flatpak e snap

Mauricio Ferrari
maurixnovatrento

(usa Slackware)

Enviado em 22/03/2021 - 23:09h


bilufe escreveu:

xerxeslins escreveu:

Eu acredito que o Linux Mint 20 modificou acertadamente o Ubuntu 20.04 nesse ponto.

O snap vem desabilitado totalmente nas preferências do APT, com:

Package: snapd
Pin: release a=*
Pin-Priority: -10

Qual motivo disso? Quando você instala o Chromium no Ubuntu 20.04 usando o APT, você espera que seja um pacote .deb (afinal é o APT); Mas acaba instalando a versão Snap! Sem sua permissão. Fonte: https://www.zdnet.com/article/linux-mint-dumps-ubuntu-snap/

Não sou contra o Snap. Apesar de ser gordo, lento e, dizem, o Snapcraft tet código-fechado, indo contra a filosofia básica do Linux...

Só espero que o projeto amadureça cada vez mais. Mas que seja sempre uma opção, sem forçar o uso.

No momento é aquela coisa: confuso para o usuário, mas benéfico para o desenvolvedor.

Uma coisa eu discordo, no entanto: é dizer que dá trabalho para a Canonical manter 3 ou 4 versões do mesmo programa para versões diferentes do Ubuntu. E que isso justifica o uso do Snap.

Canonical deve ter um time grande de profissionais! Não será possível que eles não consigam fazer o que times menores de distribuições pequenas fazem?

Slackware deve ter umas 5 pessoas (ou menos) cuidado de todos os pacotes e todos funcionam bem (sei que Slackware tem menos pacotes, mas a proporção de pacotes por pessoa é grande); Void Linux tem suporte para várias arquiteturas, e é mantida por relativamente poucas pessoas voluntárias; O próprio Ubuntu suga pacotes mantidos pelo time do Debian, o que já poupa trabalho.

Não entendo como as coisas funcionam, mas fica a impressão de que a Canonical quer impor o modelo deles para se sobressair.

--
"There are lots of Linux users who don't care how the kernel works, but only want to use it. That is a tribute to how good Linux is." - Linus Torvalds


Você disse:
"Uma coisa eu discordo, no entanto: é dizer que dá trabalho para a Canonical manter 3 ou 4 versões do mesmo programa para versões diferentes do Ubuntu. E que isso justifica o uso do Snap.

Canonical deve ter um time grande de profissionais! Não será possível que eles não consigam fazer o que times menores de distribuições pequenas fazem?"

Mas discordo totalmente, as distribuições pequenas não fazem empacotamento. Veja a equipe do Linux Mint que surtou só por causa de um único pacote, o Chromium, demonstrando o quão boçais eles são. Poderiam ter eles mesmo empacotado o Chromium, já que não concordaram com a decisão da Canonical, mas ficaram chorando as pitangase criticando o trabalho alheio que eles tanto copiam.

Ou seja, demonstraram novamente que não possuem capacidade para andarem com as próprias pernas.


Vamos lembrar gente, que o Linux Mint tem uma carta na manga chamado LMDE. Se eles querem é só fazer do LMDE o Linux Mint Oficial.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento



88. Re: Odeio flatpak e snap

Mauricio Ferrari
maurixnovatrento

(usa Slackware)

Enviado em 22/03/2021 - 23:44h


bilufe escreveu:

cizordj escreveu:

O Bom de fazer pacotes .deb é que isso força o desenvolvedor a usar as mesmas bibliotecas que todo mundo e se elas atualizam você é obrigado a se atualizar também pra se manter no jogo


Pelo jeito você não empacota nada.
Ter um pacote .DEB que funciona no Ubuntu 20.04 não significa que funcionará no Debian 10 ou 11. Nem mesmo significa que funcionará no Ubuntu 20.10. Um pacote que funciona no Deepin pode não funcionar no Ubuntu.
É uma questão bem complexa, um trabalho enorme.
Por exemplo, um programa que suporta o Ubuntu precisa ser empacotado para quatro versões do Ubuntu diferentes: 18.04, 20.04, 20.10 e a versão de desenvolvimento 21.04.
Agora imagine que o programa que precisa ser empacotado é o Chromium, um programa com lançamentos rápidos. Cada nova versão, um novo pacote.
Que trabalho! Por isso a Canonical decidiu que o Chromium se transformaria em Snap e agora o empacotador não precisa mais se preocupar com a versão do Ubuntu que irá executar o Chromium, mas tão somente criar o pacote e terá a certeza que ele vai funcionar em todas as versões do Ubuntu que estão ativas.

Dê uma olhada na lista de pacotes órfãos do Debian, lá tem até aplicativos muito bons e únicos, mas infelizmente não tem ninguém que cuide deles. A lista é enorme, são programas que correm o risco de sair dos repositórios porque não há ninguém interessado em mantê-los.

Snaps e Flatpaks vieram para ajudar nesse quesito, um software que roda no Ubuntu 18.04 vai continuar rodando no Ubuntu 20.04, assim como no Debian, Fedora e outros.


Eu já empacotei bastante pacotes deb. Depois da primeira compilação não dá mais trabalho nenhum é só modificar o script automatizado e fogo. O mesmo script você gera o pacote deb ou rpm para várias distros só modificando alguns parâmetros. Não dá trabalho nenhum para quem sabe trabalhar. Foi assim com o qmplay2 no Mint e no Deepin (pensa o arrependimento usar essa distro, vá bug).

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts