GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren und verwenden Sie Snapcraft unter Linux

Wenn Sie nach einer besseren Möglichkeit suchen, Software in Ihrem Linux-System zu verwalten, sollten Sie Snapcraft ausprobieren. Mit Snapcraft können Sie mit wenigen Klicks nach Software suchen, diese installieren und verwalten und gleichzeitig neue Snaps mit der Community finden, teilen und erstellen.

In diesem Tutorial erfahren Sie, wie Sie Snapcraft installieren, einen einfachen Snap erstellen und auf Ihrem Linux-System installieren.

Bereit? Bleiben Sie auf dem Laufenden und erfahren Sie, wie Snapcraft Ihre Softwareverwaltung vereinfachen kann!

Voraussetzungen

Dieses Tutorial wird eine praktische Demonstration sein, und Sie benötigen ein Linux-System, um mitzumachen. In dieser Anleitung wird Ubuntu 20.04 verwendet, aber alle Derivate funktionieren.

Installieren von Snapd (Snap Daemon) und Snapcraft

Bevor Sie Snaps erstellen oder sogar ausführen können, müssen Sie zunächst Snapd installieren, einen Daemon, der zum Ausführen von Snaps erforderlich ist. Mit Snapd können Sie auch Snapcraft auf Ihrem System installieren und aktivieren.

So installieren Sie Snapd unter Ubuntu:

1. Führen Sie Folgendes ausg apt update Befehl zum Aktualisieren Ihrer Ubuntu-Repositories.

apt update -y

2. Als nächstes führen Sie den folgenden apt install aus Befehl zum Installieren von Snapd.

apt install snapd -y

3. Führen Sie nach der Installation snap aus Befehl unten, um die auf Ihrem System installierte Version von Snapd zu überprüfen.

snap --version

4. Führen Sie zuletzt snap install aus Befehl unten, um snapcraft zu installieren .

Snapcraft ist ein leistungsstarkes Tool, mit dem Sie Snaps für verschiedene Anwendungen erstellen können. Sie müssen nur die Abhängigkeiten für Ihren Snap angeben, und Snapcraft erledigt den Rest.

snap install --classic snapcraft

Unten sehen Sie die Ausgabe, die bestätigt, dass Snapcraft erfolgreich installiert wurde.

Ein Snap-Projekt mit Snapcraft initialisieren

Nachdem Sie Snapcraft installiert haben, können Sie jetzt Snaps erstellen. Ein Snap ist ein eigenständiges Anwendungspaket, das alle Abhängigkeiten und Bibliotheken enthält, die zum Ausführen einer Anwendung erforderlich sind. Mit einem Klick (Wortspiel beabsichtigt) können Sie schnell Anwendungen unter Linux installieren und verwalten.

Snaps sind außerdem sicher und vom Rest Ihres Systems isoliert, was dazu beiträgt, Ihr System vor Malware zu schützen. Sie können sogar Ihre Snaps in den Snap Store hochladen, damit andere sie verwenden können, oder Sie können Snaps aus dem Snap Store herunterladen, um sie auf Ihrem System zu verwenden.

Um zu sehen, wie Snapcraft in Aktion funktioniert, erstellen Sie einen einfachen Snap für eine „Hallo Welt“-Anwendung. Aber zuerst brauchen Sie ein Projektverzeichnis, um ein Snapcraft-Projekt zu initialisieren:

1. Führen Sie die folgenden Befehle aus, um ein Verzeichnis zu erstellen (mkdir ) für deinen Snap und bewege dich in dieses Verzeichnis (cd ). Dieses Verzeichnis enthält alle Dateien, die sich auf Ihren Snap beziehen, in dem Sie auch alle folgenden Befehle ausführen.

Sie müssen Leerzeichen in Ihren Verzeichnisnamen weglassen, wenn Sie mit Snapcraft arbeiten, um Probleme wie Build-Fehler zu vermeiden.

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

2. Führen Sie nun snapcraft aus Befehl unten zum Initialisieren (init ) Ihr Snapcraft-Projekt.

Dieser Befehl erstellt eine snapcraft.yaml und andere Umgebungsdateien im aktuellen Verzeichnis. Diese Datei wird verwendet, um Abhängigkeiten und verschiedene Einstellungen für Ihren Snap zu deklarieren.

snapcraft init

3. Führen Sie schließlich den folgenden tree aus Befehl, um Ihr Snap-Verzeichnis zu überprüfen. tree -a

tree -a

An diesem Punkt sollten Sie eine Verzeichnisstruktur haben, die wie die folgende aussieht. Diese Struktur wird als Fangbaum bezeichnet.

Konfigurieren und Erstellen eines Snaps

Nachdem Sie Ihr Snapcraft-Projekt initialisiert haben, sind Sie fast bereit, Ihren Snap mit Snapcraft zu erstellen. Aber zuerst müssen Sie einige Metadaten für Ihren Snap deklarieren. Diese Metadaten umfassen den Namen, die Version, die Zusammenfassung und die Beschreibung Ihres Snaps. Und Sie können auch die Lizenz für Ihr Snap- und Confinement-Level angeben.

Wie? Durch Bearbeiten der automatisch generierten snapcraft.yaml Datei, als Sie Ihr Projekt initialisiert haben.

1. Öffnen Sie die snapcraft.yaml Datei in Ihrem bevorzugten Texteditor.

nano snap/snapcraft.yaml

2. Ersetzen Sie als Nächstes den vorgenerierten Inhalt der Datei durch die folgenden Zeilen, um Metadaten für Ihren Snap zu deklarieren.

Schließen Sie die Datei jedoch noch nicht, da Sie Teile der Konfiguration nacheinander hinzufügen, um besser zu verstehen, wie der Snap konfiguriert ist.

# 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. Fügen Sie den folgenden Code unter confinement hinzu Zeile, um eine App verfügbar zu machen.

Dieser Code teilt Snapcraft mit, dass Ihr Snap eine App namens hello enthält das kann mit dem bin/hello ausgeführt werden Befehl.

apps:

 hello:

  command: bin/hello

4. Fügen Sie nun den folgenden Code am Ende der snapcraft.yaml hinzu Datei, die Ihrem Snap einen Teil hinzufügt. Ein Teil beschreibt die Komponenten Ihres Snaps, wie sie aufgebaut sein sollten und wo sie zu finden sind.

Dieser Code fügt einen Teil namens gnu-hello hinzu , basierend auf dem offiziellen Hello-Paket von Ubuntu 18.04.

Beachten Sie, dass Ihr Snap mehrere Teile enthalten kann, aber in diesem Tutorial benötigen Sie nur einen.

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

An diesem Punkt sollten Sie eine snapcraft.yaml haben Datei, die wie die folgende aussieht. Speichern Sie die Änderungen und schließen Sie die Datei.

# 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. Führen Sie abschließend den folgenden snapcraft aus Befehl nach all der harten Arbeit, um Ihren ersten Snap zu erstellen.

snapcraft

Beim ersten Ausführen von snapcraft Befehl, werden Sie aufgefordert, Multipass zu installieren, wie unten gezeigt. Multipass verwaltet virtuelle Maschinen zum Erstellen von Snaps, und Snapcraft verwendet virtuelle Maschinen zum Erstellen von Snaps in einer sauberen und isolierten Umgebung.

Geben Sie j ein und drücken Sie Enter weitermachen.

Der Erstellungsprozess lädt alle Abhängigkeiten herunter und erstellt sie aus der Quelle, was eine Weile dauert. Nach dem Erstellen sehen Sie eine Ausgabe ähnlich der folgenden.

Wie Sie sehen, hello_2.10_amd64.snap ist das erstellte Paket, das Ihr Snap-Paket ist und jetzt auf jeder Linux-Distribution installiert werden kann, die Snaps unterstützt.

Snap testen

Sie haben Ihren Snap erfolgreich erstellt, aber woher wissen Sie, dass er funktioniert? Stellen Sie Ihren neu erstellten Snap auf die Probe, indem Sie ihn auf Ihrem System installieren und Ihre „Hello World“-Anwendung ausführen.

1. Führen Sie den folgenden snap aus Befehl an install Ihr neu erstelltes Snap-Paket (hello_2.10_amd64.snap ) auf Ihrem System.

snap install --devmode hello_2.10_amd64.snap

2. Als nächstes führen Sie hello aus Befehl unten, den Sie in der snapcraft.yaml deklariert haben Datei zum Ausführen von hello App, die in Ihrem Snap enthalten ist.

hello

Wenn alles wie erwartet funktioniert hat, sollten Sie die Meldung „Hello, world!“ sehen. Nachricht, die wie gezeigt auf dem Bildschirm gedruckt wird.

3. Führen Sie abschließend snap list aus Befehl unten, um die installierten Snaps (hello ) Information.

snap list hello

Schlussfolgerung

Softwareverwaltung kann eine mühsame Arbeit sein, es sei denn, Sie haben ein zuverlässiges Tool zur Verfügung. Und in diesem Tutorial haben Sie gelernt, wie Sie Snapcraft installieren und verwenden, um einen einfachen Snap zum problemlosen Verwalten und Installieren von Software auf Ihrem Linux-System zu erstellen.

Nachdem Sie gesehen haben, wie Snapcraft funktioniert, warum beginnen Sie nicht mit der Erstellung komplexerer Snaps und laden sie in den Snap Store hoch, damit andere sie installieren und verwenden können?


Linux
  1. So installieren und verwenden Sie Telnet unter Kali Linux

  2. Wie installiere und verwende ich den Linux-Bildschirm?

  3. So installieren und verwenden Sie den Snap-Paket-Manager unter Alma Linux 8

  4. So installieren und verwenden Sie Flatpak unter Linux

  5. So installieren und verwenden Sie Traceroute unter Linux

So installieren und verwenden Sie Thunderbird unter Linux

So installieren und verwenden Sie Git in einem Linux-System

So installieren und verwenden Sie den Ping-Befehl unter Linux

So installieren und verwenden Sie Telnet auf Linux-Systemen

So installieren und verwenden Sie den fd-Befehl unter Linux

So installieren und verwenden Sie Nu Shell unter Linux