web analytics

[Guida] Ecco come usare gli Snap su una distribuzione GNU/Linux

snapcraft

In questo articolo vi ho parlato delle principali differenze tra i tre principali package manager in ambiente GNU/Linux: Snap, Flatpak e AppImage. Essi perseguono l’obiettivo comune di essere distribution agnostic. Oggi vediamo come utilizzare gli snap su una qualsiasi distribuzione GNU/Linux che li supporti. Concluderò la guida con un’introduzione agli snapshot.

Snap, migliora la gestione delle app

Prima di procedere alla guida vera e propria, dobbiamo accertarci che il nostro sistema sia configurato adeguatamente. Il primo step consisterà quindi nell’installazione dei componenti di base necessari per il funzionamento di questo package manager. Snapd dovrebbe essere compreso di default in tutte le recenti versioni di Ubuntu e derivate (ad eccezione di Lubuntu), in tal caso potremo quindi saltare questo primo passaggio.

Se non avete snapd date le seguenti istruzioni da terminale:

sudo apt install snapd // Per le distribuzioni Debian based
sudo dnf install snapd // Per Fedora e derivate

Per chi utilizza Arch Linux o altre versioni, vi rimando al sito ufficiale, dove è presente una guida dedicata, indicizzata per distribuzione. La principale differenza consiste nell’ulteriore passaggio di abilitazione del socket del servizio, tramite systemctl, come abbiamo imparato in questa guida. Vediamo un esempio per Red Hat:

sudo yum install snapd
sudo systemctl enable --now snapd.socket

Snap find, install, remove

Possiamo ora discutere su come utilizzare il package manager vero e proprio. Per tovare le applicazioni distribuite con questo formato, abbiamo varie possibilità. Se ci troviamo su Ubuntu, possiamo effettuare la ricerca direttamente sul software center della distribuzione. Altrimenti se vogliamo comunque utilizzare un approccio visuale, basterà consultare il web store. Noi invece andremo ad imparare l’utilizzo dei classici comandi da terminale.

snap find

Ipotizziamo di voler installare Spotify. Se non ricordiamo con precisione il nome del pacchetto, ma sappiamo come descriverlo, basterà utilizzare l’opzione find. Questa direttiva è abbastanza flessibile, accetterà come argomento non solo un nome incompleto del pacchetto, ma anche una semplice descrizione, tra virgolette. Ad esempio snap find “radio” ci darà l’output come nello screenshot. Possiamo poi proseguire all’installazione dello snap con:

snap install spotify

Per tenere traccia delle app installate, possiamo utilizzare snap list, che stamperà, come è ovvio, un listato di tutti gli snap presenti nel nostro sistema. Invece con snap remove spotify possiamo disinstallare il software. Esiste anche la possibilità di scaricare in locale un file, in formato .assert, per installarlo in un momento successivo in cui magari non abbiamo la connessione. Le istruzioni saranno:

snap download spotify
snap ack spotify.assert
snap install spotify.assert

Una delle caratteristiche peculiari di snapcraft, è il controllo della presenza di aggiornamenti delle app installate. Questo viene chiamato refresh, ed è un compito specifico del demone snapd, che  di default esegue questo check quattro volte al giorno. Tramite l’istruzione snap refresh –time, si può controllare quando è stato eseguito il job. Canonical ha implementato la possibilità per l’utente di modificare la frequenza di questi controlli, sempre tramite il comando snap. Scopriamo insieme come settare la variabile principale, rimandandovi alla guida ufficiale per una trattazione completa dello scheduling. Se vogliamo ad esempio imporre di effettuare il refresh solo alle 10 di ogni lunedì, ed alle 15 del venerdì, l’istruzione sarà:

sudo snap set system refresh.timer=mon,10:00,,fri,15:00 

Infine ricordiamo che il downgrade all’installazione precedente di uno snap si esegue semplicemente con il comando snap revert nome_pacchetto.

Snapshot: il backup di snapd

L’opzione forse più interessante di questo sistema di distribuzione dei pacchetti è forse la possibilità di effettuare delle copie dei dati di configurazione memorizzati da snapd. Le istantanee vengono generate manualmente oppure automaticamente quando un’app viene rimossa. Questi backup sono utilissimi quando, ad esempio, vogliamo fare il downgrade ad uno stato precedente che magari ci dava meno problemi di stabilità. I comandi principali possono essere eseguiti combinando snap con una delle seguenti opzioni:

  • save per creare manualmente lo snapshot;
  • saved per controllare tutte le nostre istantanee;
  • check-snapshot 4 controlla l’integrità dello snapshot numero 4;
  • restore 30 per ripristinare uno stato precedente;
  • forget 30 per eliminare un’instantanea.

snap snapshot

Per una trattazione completa sugli snapshot, vi rimando alla guida ufficiale.

sharing-caring-1Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.