Flatpak e Snap: 10 differenze che dovresti conoscere
I pacchetti Flatpak e Snap sono più popolari che mai tra gli utenti Linux che non preferiscono più i pacchetti binari nativi o AppImages.
Principalmente per la sua facilità d’uso, l’integrazione con il Software Center della proprio distribuzione GNU/Linux e la possibilità di ottenere gli ultimi aggiornamenti delle app senza problemi.
Non devi più preoccuparti delle dipendenze durante l’installazione di un’app.
Per alcuni, anche i vantaggi in termini di sicurezza derivanti dal sandboxing/isolamento sono un fattore determinante. Ma non ne discuteremo qui i dettagli.
Indipendentemente dai vantaggi di Flatpak e Snap, quali sono le loro differenze? Cosa dovresti considerare prima di scegliere quale utilizzare? In questo articolo esploriamo come si differenziano per aiutarti a decidere.
1. Origine
Snap (talvolta chiamato Snappy) è stato sviluppato da Canonical per creare applicazioni per piattaforme IoT. Lo scopo di Snap è sempre stato quello di incoraggiare gli aggiornamenti delle app e rendere più semplice la loro manutenzione per gli sviluppatori rispetto ai pacchetti .deb
.
Alla fine, si è fatto strada per le applicazioni destinate ai desktop (anche con GUI).
Se vuoi approfondire la storia di Snap, ti consiglio di leggere il post sul blog di Alan Pope.
Flatpak è stato creato da Alexander Larsson, Principal Software Engineer presso Red Hat. È un progetto open source indipendente in cui sono coinvolti molti importanti sviluppatori di GNOME, Fedora e Red Hat.
L’obiettivo era quello di avere un impianto robusto per distribuire le applicazioni desktop Linux su varie distribuzioni.
Originariamente era conosciuta come xdg-app e successivamente ribattezzata Flatpak nel 2016.
Per approfondimenti più interessanti sulla storia di Flatpak, dai un’occhiata al vecchio post sul blog di Alexander.
2. Casi d’uso
Ogni formato di pacchetto ha i suoi vantaggi. Qualcuno potrebbe dire ma perché ne abbiamo bisogno?
Ad oggi, abbiamo bisogno di ogni formato di pacchetto disponibile se non vogliamo farci mancare nulla. Quindi, puoi scegliere di utilizzare tutto ciò di cui hai bisogno in base alle tue esigenze. Pertanto, è essenziale sapere dove e perché i pacchetti Flatpak e Snap possono essere utili.
Flatpak è progettato su misura solo per workstation Linux e personal computer per eseguire applicazioni desktop.
Tuttavia, gli Snap funzionano sul desktop e possono essere utilizzati anche per applicazioni da terminale focalizzate sul server.
Ad esempio, Ubuntu Core, il sistema operativo per l’IoT ed Edge Computing sono realizzati con degli snap per mantenere le cose al sicuro e garantire aggiornamenti affidabili.
Per quanto ne so, Flatpak non è stato utilizzato per nulla di simile a causa del suo approccio diverso e del caso d’uso mirato.
3. Tempo di avvio
È noto che le applicazioni Snap hanno un avvio lento rispetto a Flatpak e Canonical ci sta lavorando da un po’ .
Naturalmente, in pratica, non tutti gli utenti potrebbero notare o preoccuparsi della differenza. Tuttavia, il consenso generale riguardo al tempo di avvio dell’app rimane migliore per Flatpak rispetto a Snap.
Ad esempio, trovo che l’avvio dell’app Spotify come Flatpak sia più veloce del suo Snap ma può essere soggettivo.
4. Prestazioni
Le prestazioni di un’app non si riferiscono solo alla sua reattività ma anche alla sua stabilità e alle sue offerte di funzionalità.
Alcune applicazioni funzionano meglio come Snap e altre come Flatpak.
Ad esempio, la versione Flatpak di GNOME Boxes non supporta la condivisione dei dispositivi rispetto al pacchetto Snap. Si può usare questo esempio per dire che gli Snap sono migliori?
Quindi, devi testare le tue applicazioni preferite per capire cosa è meglio per te! Nessuno ha un vantaggio chiaro.
5. Disponibilità e popolarità
Sebbene sia possibile installarli su qualsiasi distribuzione Linux, Flatpak ottiene un vantaggio per la sua disponibilità e il supporto immediato su più distribuzioni rispetto a Snap.
Ad esempio, Linux Mint, che nasce da Ubuntu che privilegia il formato Snap, viene fornito con lo Snap disabilitato ma presenta il supporto Flatpak integrato.
Distribuzioni come Pop!_OS e Ubuntu MATE offrono anche il supporto Flatpak per impostazione predefinita. In altre parole, troverai molte diverse distribuzioni GNU/Linux (diverse dalle versioni Ubuntu) che hanno Flatpak integrato per impostazione predefinita.
Tuttavia, gli Snap sono preferiti principalmente da Ubuntu di Canonical e dalle sue versioni ufficiali.
Quindi, si può dire che l’adozione di Flatpak per i desktop Linux è molto più ampia (anche se non necessariamente con una base di utenti più ampia) ma si potrebbe dire che il numero di applicazioni disponibili come Snap è maggiore. Anche se un paio di anni fa questa era una differenza sostanziale e il sistema consigliato era Flatpak, Ma oggi Flathub, lo Store di App Flatpak, ora offre la maggior parte delle app essenziali, il che potrebbe non renderlo un problema.
6. Open Source contro Closed Source
Flatpak è interamente open source.
Purtroppo, quando si parla di pacchetti Snap, la risposta non è così semplice.
Snap è un progetto open source nella sua essenza, incluso snapd lo strumento per installare/rimuovere le applicazioni distribuite tramite pacchetti snap.
Tuttavia, lo Snap Store è un componente closed source. Il codice sorgente del Snap Store non è disponibile pubblicamente ed è proprietario e controllato da Canonical senza alcun coinvolgimento della comunità. È ospitato su server Canonical e non è disponibile per il download pubblico. Il codice sorgente dello Snap Store non è disponibile pubblicamente, quindi non è possibile verificarne il funzionamento o apportare modifiche.
Come utente finale, non dovresti avere problemi con le parti closed source di Snap purché l’app svolga il lavoro.
Naturalmente, Flatpak sarà la tua scelta se preferisci tecnologie totalmente open source.
7. Decentralizzato vs. centralizzato
Flatpak è open source e abbraccia un approccio decentralizzato.
Anche se disponiamo del famoso portale Flathub da cui la maggior parte degli utenti ottiene le proprie app, Flatpak consente di avere più Store quando e se necessario.
Con Snap sei limitato allo Snap Store di Canonical e, in un certo senso, alle intenzioni di Canonical.
Alcuni utenti preferiscono uno Store di applicazioni centralizzato per comodità. Quindi non dovresti avere problemi con nessuno dei due. Tuttavia, Flatpak ti dà il vantaggio di aggiungere un repository aggiuntivo se necessario. E questo è un segno di maggiore libertà.
8. Aggiornamenti
Le applicazioni Snap vengono aggiornate automaticamente per impostazione predefinita. L’utente può modificare quando e con quale frequenza avvengono gli aggiornamenti. Inoltre, puoi sospendere e posticipare gli aggiornamenti per gli Snap selezionati.
Al contrario, i pacchetti Flatpak non vengono aggiornati automaticamente. Se disponi dell’integrazione Flatpak con il Software Center, riceverai una notifica degli aggiornamenti disponibili ma non verranno aggiornati forzatamente. Quindi hai la libertà di scegliere.
Con Flatpak ottieni maggiore controllo per impostazione predefinita. Tuttavia, alcuni utenti dimenticano di aggiornare i pacchetti perdendo nuove funzionalità o correzioni di sicurezza o bug.
Pertanto, se desideri aggiornamenti automatici per le applicazioni che utilizzi o desideri che il controllo le aggiorni manualmente, ciò influenzerà ciò che ti piace di più.
9. Uso
Flatpak non ha bisogno dei privilegi di amministratore per installare le applicazioni, ma Snap sì.
Flatpak viene fornito con il sandboxing abilitato per impostazione predefinita. Utilizza la funzionalità namespaces del kernel Linux per il sandboxing mentre Snap utilizza AppArmor.
Puoi esplorare entrambe le documentazioni degli sviluppatori per saperne di più. Ma questi 2 punti chiave potrebbero influenzare la scelta di uno di essi per il tuo caso d’uso.
10. Prospettiva del manutentore
Esplorando forum e Reddit prima di scrivere questo articolo, ho trovato alcuni spunti interessanti da parte dei manutentori delle app in entrambi i formati. Alcuni di questi includono:
- Gli Snap sono più facili da mantenere/creare rispetto ai pacchetti Flatpak.
- La sicurezza Snap è più avanzata.
- Con Flathub come Store di Flatpak, i manutentori ricevono aiuto da vari sviluppatori per testare e migliorare i loro Flatpak.
Naturalmente, per approfondire ulteriormente le informazioni tecniche e differenze, la documentazione online sarà un ottimo punto di partenza.
Ci sono pregi e difetti in entrambi i sistemi e molto dipende dal tuo desiderio di libertà.
Fonte: https://itsfoss.com/flatpak-vs-snap/
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!
Hai dubbi o problemi? Ti aiutiamo noi!
Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.