GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare e utilizzare Snapcraft su Linux

Se stai cercando un modo migliore per gestire il software nel tuo sistema Linux, potresti voler dare un'occhiata a Snapcraft. Con Snapcraft puoi cercare, installare e gestire software con pochi clic mentre trovi, condividi e crei nuovi snap con la community.

In questo tutorial imparerai come installare Snapcraft, creare uno snap di base e installarlo sul tuo sistema Linux.

Pronto? Resta sintonizzato ed esplora come Snapcraft può semplificarti la vita nella gestione del software!

Prerequisiti

Questo tutorial sarà una dimostrazione pratica e avrai bisogno di un sistema Linux per seguirlo. Questo tutorial utilizza Ubuntu 20.04, ma tutti i derivati ​​funzioneranno.

Installazione di Snapd (Snap Daemon) e Snapcraft

Prima di creare o anche eseguire gli snap, devi prima installare Snapd, un demone necessario per eseguire gli snap. Snapd ti consente anche di installare e abilitare Snapcraft sul tuo sistema.

Per installare Snapd su Ubuntu:

1. Esegui il seguenteg apt update comando per aggiornare i tuoi repository Ubuntu.

apt update -y

2. Quindi, esegui il seguente apt install comando per installare Snapd.

apt install snapd -y

3. Una volta installato, esegui snap comando seguente per verificare la versione di Snapd installata sul tuo sistema.

snap --version

4. Infine, esegui snap install comando qui sotto per installare snapcraft .

Snapcraft è un potente strumento che ti consente di creare snap per varie applicazioni. Devi solo dichiarare le dipendenze per il tuo snap e Snapcraft farà il resto.

snap install --classic snapcraft

Di seguito, puoi vedere l'output conferma che Snapcraft è stato installato correttamente.

Inizializzazione di un progetto Snap con Snapcraft

Ora che hai installato Snapcraft, sei pronto per creare snap. Uno snap è un pacchetto applicativo autonomo che include tutte le dipendenze e le librerie necessarie per eseguire un'applicazione. Con un attimo (gioco di parole), puoi installare e gestire rapidamente le applicazioni su Linux.

Gli snap sono anche sicuri e isolati dal resto del sistema, il che aiuta a proteggere il sistema dai malware. Puoi persino caricare i tuoi scatti sullo Snap Store affinché altri possano utilizzarli, oppure puoi scaricare gli snap dallo Snap Store per utilizzarli sul tuo sistema.

Per vedere come funziona Snapcraft in azione, creerai un semplice snap per un'applicazione "ciao mondo". Ma prima, hai bisogno di una directory di progetto per inizializzare un progetto Snapcraft:

1. Esegui i seguenti comandi per creare una directory (mkdir ) per il tuo snap e spostati in quella directory (cd ). Questa directory conterrà tutti i file relativi al tuo snap, dove eseguirai anche tutti i seguenti comandi.

Devi omettere gli spazi nei nomi delle directory quando lavori con Snapcraft per evitare problemi, come errori di compilazione.

# Create a project directory
mkdir -p ~/mysnaps/hello
# Change the working directory
cd ~/mysnaps/hello

2. Ora esegui snapcraft comando seguente per inizializzare (init ) il tuo progetto Snapcraft.

Questo comando crea un snapcraft.yaml e altri file di ambiente nella directory corrente. Questo file viene utilizzato per dichiarare dipendenze e impostazioni diverse per lo snap.

snapcraft init

3. Infine, esegui tree di seguito comando per controllare la tua directory snap. tree -a

tree -a

A questo punto, dovresti avere una struttura di directory simile a quella qui sotto. Questa struttura è nota come snap tree.

Configurazione e creazione di uno Snap

Dopo aver inizializzato il tuo progetto Snapcraft, sei quasi pronto per creare il tuo snap con Snapcraft. Ma prima devi dichiarare alcuni metadati per il tuo snap. Questi metadati includono il nome, la versione, il riepilogo e la descrizione dello snap. E puoi anche specificare la licenza per il tuo livello di reclusione e snap.

Come? Modificando il snapcraft.yaml generato automaticamente quando hai inizializzato il tuo progetto.

1. Apri snapcraft.yaml file nel tuo editor di testo preferito.

nano snap/snapcraft.yaml

2. Quindi, sostituisci il contenuto pregenerato del file con le seguenti righe per dichiarare i metadati per il tuo snap.

Ma non chiudere ancora il file poiché aggiungerai parti della configurazione una alla volta per capire meglio come è configurato lo snap.

# Your snap's name (must be in lowercase) and can contain letters, numbers, and hyphens.
name: hello
# The base snap that your snap will be built on top of. 
# core18 base is based on Ubuntu 18.04 (Bionic Beaver).
base: core18
# The current snap's version (incremental)
version: '2.10'
# One-line snap description
summary: GNU Hello, the "hello world" snap
# Long snap description. It can span multiple lines and can contain Markdown formatting.
description: |

 GNU hello prints a friendly greeting.

# Sets the snap's security grade (devel). 
# devel grade - used for development snaps that are not for general release. 
# stable grade - used for snaps considered ready for production use. 
# candidate grade - used for snaps ready for final testing (before stable grade).
grade: devel
# Sets the snap's confinement level (devmode)
# devmode - the least secure level where snap has full access to the host system.
# strict - the most secure level where snap has limited access to the host system.
# classic - somewhere in between where snap has limited access to the host system 
          # with some security features disabled.
confinement: devmode

3. Aggiungi il seguente codice sotto confinement riga per esporre un'app.

Questo codice dice a Snapcraft che il tuo snap contiene un'app chiamata hello che può essere eseguito con il bin/hello comando.

apps:

 hello:

  command: bin/hello

4. Ora aggiungi il codice seguente alla fine di snapcraft.yaml file che aggiunge una parte al tuo snap. Una parte descrive i componenti del tuo snap, come dovrebbero essere costruiti e dove possono essere trovati.

Questo codice aggiunge una parte chiamata gnu-hello , basato sul pacchetto ufficiale Hello di Ubuntu 18.04.

Nota che il tuo snap può contenere più parti, ma in questo tutorial te ne servirà solo una.

parts:
  gnu-hello:
    source: http://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz
    plugin: autotools

A questo punto dovresti avere un snapcraft.yaml file che assomiglia a quello qui sotto. Salva le modifiche e chiudi il file.

# Your snap's name (must be in lowercase) and can contain letters, numbers, and hyphens.
name: hello
# The base snap that your snap will be built on top of. 
# core18 base, which is based on Ubuntu 18.04 (Bionic Beaver).
base: core18
# The current snap's version (incremental)
version: '2.10'
# One-line snap description
summary: GNU Hello, the "hello world" snap
# Long snap description. It can span multiple lines and can contain Markdown formatting.
description: |

 GNU hello prints a friendly greeting.

# Sets the snap's security grade (devel). 
# devel grade - used for development snaps that are not for general release. 
# stable grade - used for snaps considered ready for production use. 
# candidate grade - used for snaps ready for final testing (before stable grade).
grade: devel
# Sets the snap's confinement level (devmode)
# devmode - the least secure level where snap has full access to the host system.
# strict - the most secure level where snap has limited access to the host system.
# classic - somewhere in between where snap has limited access to the host system 
          # with some security features disabled.
confinement: devmode

# Expose an application called "hello" that can be run with the bin/hello command.
apps:

 hello:

  command: bin/hello

# Adding parts to describe the components of your snap, 
  # how they should be built and where they can be found.
parts:
  gnu-hello:
    source: http://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz
    plugin: autotools

5. Infine, esegui il seguente snapcraft comando dopo tutto il duro lavoro per costruire il tuo primo snap.

snapcraft

La prima volta che esegui snapcraft comando, ti verrà richiesto di installare Multipass, come mostrato di seguito. Multipass gestisce le macchine virtuali per la creazione di snap e Snapcraft utilizza macchine virtuali per creare snap in un ambiente pulito e isolato.

Digita y e premi Invio continuare.

Il processo di costruzione scarica tutte le dipendenze e le crea dal sorgente, il che richiede un po' di tempo per essere completato. Una volta creato, vedrai un output simile a quello qui sotto.

Come puoi vedere, ciao_2.10_amd64.snap è il pacchetto che è stato creato, che è il tuo pacchetto snap e ora può essere installato su qualsiasi distribuzione Linux che supporti gli snap.

Testare il tuo Snap

Hai costruito con successo il tuo snap, ma come fai a sapere che funziona? Metti alla prova il tuo snap appena creato installandolo sul tuo sistema ed eseguendo la tua applicazione "ciao mondo".

1. Esegui il seguente snap comando a install il tuo pacchetto snap appena creato (hello_2.10_amd64.snap ) sul tuo sistema.

snap install --devmode hello_2.10_amd64.snap

2. Quindi, esegui il hello comando seguente, che hai dichiarato in snapcraft.yaml per eseguire il hello app inclusa nel tuo snap.

hello

Se tutto ha funzionato come previsto, dovresti vedere il messaggio "Hello, world!" messaggio stampato sullo schermo come mostrato.

3. Infine, esegui snap list comando seguente per ottenere lo snap installato (hello ) informazione.

snap list hello

Conclusione

La gestione del software può essere un lavoro noioso a meno che non si disponga di uno strumento affidabile. E in questo tutorial, hai imparato come installare e utilizzare Snapcraft per creare un semplice scatto per gestire e installare il software sul tuo sistema Linux senza problemi.

Dopo aver visto come funziona Snapcraft, perché non iniziare a creare snap più complessi e caricarli sullo Snap Store affinché altri possano installarli e utilizzarli?


Linux
  1. Come installare e utilizzare telnet su Kali Linux

  2. Come installare e utilizzare lo schermo Linux?

  3. Come installare e utilizzare Snap Package Manager su Alma Linux 8

  4. Come installare e utilizzare Flatpak in Linux

  5. Come installare e utilizzare Traceroute in Linux

Come installare e utilizzare Thunderbird in Linux

Come installare e utilizzare Git nel sistema Linux

Come installare e utilizzare il comando Ping in Linux

Come installare e utilizzare Telnet su sistemi Linux

Come installare e utilizzare il comando fd in Linux

Come installare e utilizzare Nu Shell su Linux