Ultima modifica:
Sistemi di pacchettizzazione alternativa sotto Linux
Visto che al giorno d'oggi la stragrande maggioranza degli utenti Linux utilizza in modo più o meno consapevole dei sistemi di pacchettizzazione alternativa è giusto parlare di quelli più diffusi. Qui prendo in esame flatpak, snap, AppImage e Nix. Qui di seguito sono riportati i principali aspetti.1 Cosa sono?
Per sistemi di pacchettizzazione alternativa si intendono tutti quei sistemi di distribuzione software che sono esterni al repository main della propria distribuzione, essi tipicamente sono pensati per esser svincolati da una distribuzione Linux specifica ed essere asettici.1.1 flatpak
Flatpak è un utility per distribuzione software e la gestione dei pacchetti per Linux. Viene pubblicizzato come un ambiente sandbox in cui gli utenti possono eseguire in modo isolato dal resto del sistema la proprie app. Questo sistema è stato spinto tantissimo da Red Hat nella sua distro Fedora Linux, sicuramente è uno dei migliori sistemi di distribuzione alternativa al momento.1.2 snap
Snap è un utility per la distribuzione software e la gestione dei pacchetti per Linux. Viene pubblicizzato da Canonical come un ambiente sandbox in cui gli utenti possono eseguire software in modo isolato rispetto al sistema. Visto che è un progetto canonical è stato implementato su Ubuntu e le sue derivate.1.2.1 Controversie
Snap è stato più volte criticato per il fatto che lo store è Closed source, mossa non proprio brillante da parte di Canonical che ha portato molti utenti a favorire soluzioni alternative e più pratiche visto che flatpak garantisce un elevato livello di sicurezza ma non soffre di questo limite (ora qualunque sistema di pacchettizzazione permette al distributore di avere un certo controllo sul sistema utente).1.3 Appimage
AppImage è un formato per la distribuzione software stand alone molto simile al.app
di Apple Mac Os X, questo formato viene utilizzato per tutti quegli applicativi che tipicamente sono auto distribuiti e non rientrano in altri store (alle volte pure app proprietarie). Per funzionare utilizza fuse2
per fare il montaggio di un file sistem virtuale (simula un ambiente simile al .dmg
).1.4 Nix
Nix è un gestore di pacchetti multi piattaforma che utilizza un modello distribuzione in cui i software viene installato in directory univoche generate tramite hash. È anche il nome del linguaggio di programmazione dello strumento. L'hash di un pacchetto tiene conto delle dipendenze, come alternativa alla tipica soluzione di installare più versioni di una dipendenze contemporaneamente. Questo modello di gestione dei pacchetti è più affidabile, riproducibili e portabili.2 Quanto son pratiche?
Sistema di distribuzione | Comodità di utilizzo () 0/5 |
flatpak | () 4.5 |
snap | () 3 |
AppImage | () 3.5 |
Nix | () 4 |