GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat a používat Snapcraft na Linuxu

Pokud hledáte lepší způsob správy softwaru ve vašem systému Linux, možná budete chtít vyzkoušet Snapcraft. Se Snapcraftem můžete vyhledávat, instalovat a spravovat software pomocí několika kliknutí a zároveň vyhledávat, sdílet a vytvářet nové snímky s komunitou.

V tomto tutoriálu se naučíte, jak nainstalovat Snapcraft, vytvořit základní snap a nainstalovat jej do systému Linux.

Připraveni? Zůstaňte naladěni a prozkoumejte, jak vám Snapcraft může usnadnit život při správě softwaru!

Předpoklady

Tento tutoriál bude praktickou ukázkou a budete potřebovat systém Linux, abyste jej mohli sledovat. Tento tutoriál používá Ubuntu 20.04, ale budou fungovat všechny deriváty.

Instalace Snapd (Snap Daemon) a Snapcraft

Před vytvářením nebo dokonce spouštěním snapů musíte nejprve nainstalovat Snapd, démona nutného ke spouštění snapů. Snapd vám také umožňuje nainstalovat a povolit Snapcraft ve vašem systému.

Chcete-li nainstalovat Snapd na Ubuntu:

1. Spusťte následující příkazg apt update příkaz k aktualizaci vašich úložišť Ubuntu.

apt update -y

2. Dále spusťte níže uvedený apt install příkaz k instalaci Snapd.

apt install snapd -y

3. Po instalaci spusťte snap níže, abyste zkontrolovali verzi Snapd nainstalovanou ve vašem systému.

snap --version

4. Nakonec spusťte snap install příkaz níže k instalaci snapcraft .

Snapcraft je výkonný nástroj, který umožňuje vytvářet snímky pro různé aplikace. Stačí deklarovat závislosti pro váš snap a Snapcraft se postará o zbytek.

snap install --classic snapcraft

Níže můžete vidět výstup, který potvrzuje, že Snapcraft byl úspěšně nainstalován.

Inicializace projektu Snap pomocí Snapcraft

Nyní, když máte nainstalovaný Snapcraft, jste připraveni vytvářet snímky. Snap je samostatný aplikační balíček, který obsahuje všechny závislosti a knihovny potřebné ke spuštění aplikace. Jediným okamžikem (slovní hříčkou) můžete rychle instalovat a spravovat aplikace v Linuxu.

Snapy jsou také bezpečné a izolované od zbytku vašeho systému, což pomáhá chránit váš systém před malwarem. Své snímky můžete dokonce nahrát do obchodu Snap Store, aby je mohli použít ostatní, nebo si můžete snímky stáhnout z obchodu Snap Store a použít je ve svém systému.

Chcete-li vidět, jak Snapcraft funguje v akci, vytvořte jednoduchý snímek pro aplikaci „ahoj světe“. Nejprve však potřebujete adresář projektu k inicializaci projektu Snapcraft:

1. Spuštěním následujících příkazů vytvořte adresář (mkdir ) pro váš snímek a přesuňte se do tohoto adresáře (cd ). Tento adresář bude obsahovat všechny soubory související s vaším snapem, kde budete také spouštět všechny následující příkazy.

Při práci se Snapcraftem musíte v názvech adresářů vynechat mezery, abyste předešli problémům, jako jsou selhání sestavení.

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

2. Nyní spusťte snapcraft příkaz níže k inicializaci (init ) váš projekt Snapcraft.

Tento příkaz vytvoří snapcraft.yaml a další soubory prostředí v aktuálním adresáři. Tento soubor se používá k deklaraci závislostí a různých nastavení pro váš snap.

snapcraft init

3. Nakonec spusťte níže uvedený tree příkaz ke kontrole vašeho adresáře snap. tree -a

tree -a

V tomto okamžiku byste měli mít adresářovou strukturu, která vypadá jako ta níže. Tato struktura je známá jako uchopovací strom.

Konfigurace a vytváření snímku

Po inicializaci vašeho projektu Snapcraft jste téměř připraveni vytvořit svůj snímek pomocí Snapcraftu. Nejprve však musíte deklarovat některá metadata pro váš snímek. Tato metadata zahrnují název, verzi, shrnutí a popis vašeho snímku. A můžete také určit licenci pro vaši úroveň zachycení a omezení.

Jak? Úpravou automaticky generovaného souboru snapcraft.yaml při inicializaci projektu.

1. Otevřete soubor snapcraft.yaml soubor ve vašem preferovaném textovém editoru.

nano snap/snapcraft.yaml

2. Dále nahraďte předem vygenerovaný obsah souboru následujícími řádky, abyste deklarovali metadata pro váš snímek.

Ale zatím soubor nezavírejte, protože budete přidávat části konfigurace jednu po druhé, abyste lépe pochopili, jak je nakonfigurován 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. Přidejte následující kód pod confinement řádek pro zobrazení aplikace.

Tento kód říká Snapcraftu, že váš snap obsahuje aplikaci s názvem hello který lze spustit pomocí bin/hello příkaz.

apps:

 hello:

  command: bin/hello

4. Nyní přidejte následující kód na konec souboru snapcraft.yaml soubor, který přidá část do vašeho snímku. Část popisuje součásti vašeho snapu, jak by měly být vytvořeny a kde je lze nalézt.

Tento kód přidává část nazvanou gnu-hello , na základě oficiálního balíčku hello z Ubuntu 18.04.

Všimněte si, že váš snímek může obsahovat více částí, ale v tomto tutoriálu budete potřebovat pouze jednu.

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

V tomto okamžiku byste měli mít snapcraft.yaml soubor, který vypadá jako ten níže. Uložte změny a zavřete soubor.

# 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. Nakonec spusťte níže uvedený snapcraft po vší té tvrdé práci na vytvoření vašeho prvního snapu.

snapcraft

Při prvním spuštění snapcraft budete vyzváni k instalaci Multipass, jak je znázorněno níže. Multipass spravuje virtuální stroje pro vytváření snapů a Snapcraft využívá virtuální stroje k vytváření snapů v čistém a izolovaném prostředí.

Zadejte y a stiskněte Enter pokračovat.

Proces vytváření stáhne všechny závislosti a sestaví je ze zdroje, což chvíli trvá, než se dokončí. Po sestavení uvidíte výstup podobný tomu níže.

Jak vidíte, hello_2.10_amd64.snap je balíček, který byl vytvořen, což je váš balíček snap a lze jej nyní nainstalovat na jakoukoli distribuci Linuxu, která podporuje snapy.

Testování vašeho Snapu

Úspěšně jste vytvořili svůj snap, ale jak víte, že funguje? Otestujte svůj nově vytvořený snímek tím, že jej nainstalujete do systému a spustíte aplikaci „ahoj světe“.

1. Spusťte následující snap příkaz na install váš nově vytvořený balíček snap (hello_2.10_amd64.snap ) ve vašem systému.

snap install --devmode hello_2.10_amd64.snap

2. Dále spusťte hello níže, který jste deklarovali v snapcraft.yaml soubor ke spuštění hello aplikace, která je součástí vašeho snímku.

hello

Pokud vše fungovalo podle očekávání, měli byste vidět "Ahoj, světe!" zpráva vytištěná na obrazovce, jak je znázorněno.

3. Nakonec spusťte snap list příkazem níže získáte nainstalované snapy (hello ) informace.

snap list hello

Závěr

Správa softwaru může být únavná, pokud nemáte k dispozici spolehlivý nástroj. A v tomto tutoriálu jste se naučili, jak nainstalovat a používat Snapcraft k vytvoření jednoduchého snapu pro správu a instalaci softwaru na vašem systému Linux bez potíží.

Až uvidíte, jak Snapcraft funguje, proč nezačít vytvářet složitější snímky a nenahrát je do obchodu Snap Store, aby si je mohli nainstalovat a používat ostatní?


Linux
  1. Jak nainstalovat a používat Snap Package Manager na Alma Linux 8

  2. Jak nainstalovat a používat Flatpak v Linuxu

  3. Jak nainstalovat a používat Traceroute v Linuxu

  1. Jak nainstalovat a používat telnet na Kali Linux

  2. Jak nainstalovat a používat Linux Screen?

  3. Jak nainstalovat a používat SSHFS na Linuxu

  1. Jak nainstalovat a používat Slack v Linuxu

  2. Jak nainstalovat a používat Snap v různých distribucích Linuxu

  3. Jak nainstalovat a používat PuTTY na Linuxu