flatpak/snap vs .deb/.rpm
Inviato: domenica 13 marzo 2022, 16:13
@frapox
Per non andare utelriormente OT, nella discussione: viewtopic.php?f=97&t=648865
Propogongo di discuterne qui e confrontarsi anche con altri utenti.
Quindi in questo è come una revisione di un manutentore nei repo.
Esempio su flathub: https://github.com/flathub/flathub/pull/2912
Esempio su snapcraft: https://forum.snapcraft.io/t/classic-co ... kage/29040
Poi ovviamente questo non vuol dire che hai la sicurezza al 100%, ma che siano più sicuri, si, è un dato di fatto.
PS: C'è sempre da valutare costi/benefici in ogni soluzione, e credo che per le APP desktop ha più benefici che costi:
- nessuna rottura di librerie e dipendenze
- hai sempre l'ultima versione dell'app
- Più sicurezza.
- Minor manutenzione per la dsitro X e quindi possono dedicarsi a lavorare su altro.
Per non andare utelriormente OT, nella discussione: viewtopic.php?f=97&t=648865
Propogongo di discuterne qui e confrontarsi anche con altri utenti.
Non è una mia interpretazione, ma è quella degli sviluppatori di Ubuntu e snap, sono iscritto sul forum di snapcraft, ho seguito lo sviluppo di snapd per molto tempo, incluso segnalazione di bug e discussione con gli sviluppatori, prima di capirne i limniti e passare a flatpak. I limiti di snapd sono per design irrisolvibili, cioè i limiti sonoche avrai sempre un overhead all'avvio del sistema, al primo avvio di un APP e soprattutto quando la installi e fai il primo avvio. Non hai flessibilità come flatpak, questo perché è stato progettato con in mente Ubuntu core, e non per le APP desktop. Se ne è lamentato anche un ex Canonical, cioè Alan Pope.Questa è la tua interpretazione, io l'unico limite che vedo su Snap è il modo in cui viene distribuito, cioè app compresse che vanno decompresse e rallentano l'avvio, come hai giustamente detto anche tu (di quanto poi bisogna vedere e dipende dalle prestazioni della macchina).
AppaArmor non è abilitato su tutte le APP, ma in alcune, e non ha le restrizioni che hanno le APP snap o flatpak, cioè su snap Apaprmor + seccomp. Puoi verificarlo tu stesso, installa qualsiasi APP e vedrai che l'APP ha il permesso di accedere alla tua home o a qualsiasi parte del sistema. Con flatpak o snapd puoi impedire tramite permessi l'accesso ad aclune cartelle o parti del sistema.Quindi non è che del tutto esatto dire che le app "native" non siano già in qualche modo confinate, dipende da caso a caso e ricordo che Ubuntu ha Apparmor attivo di default per un tot di profili di app native.
Non è una mia interpretazione ma è un dato di fatto, cioè non è che lo sviluppatore X va e carica un APP su flathub, ci sono i manutentori e revisori su flathub, sia ciò che fa l'APP sia per i permessi, cosi anche su snapd, devi pubblicare su snapcraft se vuoi permessi "larghi", ma siccome lo store snqap di Ubuntu è closed, non so al 100% come funzioni internamente."non cambia nulla" è la tua interpretazione, io mi limito a rilevare il fatto che un'app di terze parte va sempre autorizzata e la responsabilità è in capo all'utente, mentre un'app nei repo è controllata e patchata in caso di fix di sicurezza dal team della distro. Poi, che questo non accada sempre, e con tempestività, sono d'accordo. Ma un conto è dare fiducia a un team, che testa con dei criteri standard e ripetibili i pacchetti, un altro è dare fiducia a tot sviluppatori o revisori "autonomi" che fanno capo a tot hub. Se mi fido dei mantainer della distro son sicuro che tutto il software che mi arriva dai repo è affidabile. È così anche sugli hub di flatpak o snap? Non misembra.
E su Snap ci sono revisori? non credo.
Quindi in questo è come una revisione di un manutentore nei repo.
Esempio su flathub: https://github.com/flathub/flathub/pull/2912
Esempio su snapcraft: https://forum.snapcraft.io/t/classic-co ... kage/29040
Poi ovviamente questo non vuol dire che hai la sicurezza al 100%, ma che siano più sicuri, si, è un dato di fatto.
Non sto dicendo di usare flatpak/snap incondizionatamente, ci sono casi dove le APP sandbox non coprono o che ancora hanno dei limiti, sono sempre package nuovi e quindi va meglio un APP ".deb/.rpm".E infatti questo esempio (già discusso altrove) è un caso limite (e limitato nel tempo) per il quale infatti l'usare un app sandboxizata ha più senso dell'app nativa (sempre per quel periodo limitato di tempo)
È vero che nella dimensione complessiva le app deb/rpm pesano meno, però è anche vero che almeno flatpak ha runtime e quindi se 10 APP si appoggiano a un runtime, non avrai il duplicato X 10 X libreria, ma è vero che potresti averla se una versione è indietro e si appoggia a un vecchio runtime, ma su questo flatpak fa dedup internamente quindi un ulteriore risparmio: https://blogs.gnome.org/wjjt/2021/11/24 ... plication/PS. C'è anche un altro aspetto che mi fa preferire le app native ed è il fatto che alla fine sono più contenute come dimensioni in quanto usano le librerie condivise di sistema. Ogni app universale ha un peso molto più consistente su disco e questo su decine di app installate può fare la differenza
PS: C'è sempre da valutare costi/benefici in ogni soluzione, e credo che per le APP desktop ha più benefici che costi:
- nessuna rottura di librerie e dipendenze
- hai sempre l'ultima versione dell'app
- Più sicurezza.
- Minor manutenzione per la dsitro X e quindi possono dedicarsi a lavorare su altro.
