Comment travailler avec les packages Snap sous Linux

Contenu

Lorsque vous installez des packages logiciels Linux avec snap, vous pouvez dire adieu à l'enfer de la dépendance et casser d'autres applications qui fonctionnent. Les packages Snap ont été conçus à l'origine pour Ubuntu, mais maintenant ils sont disponibles dans une gamme de distributions Linux.

Que sont les packages Snap?

Autrefois, l'installation d'applications sur Linux était une expérience potentiellement frustrante. J'installerais quelque chose juste pour trouver une bibliothèque particulière ou une autre dépendance manquante ou obsolète. Après, rechercherait la ressource manquante et installerait, juste pour trouver une autre application qui dépend de la version de la bibliothèque que vous venez de remplacer. Réparez-en un, en casser un, répéter.

Cela s'est amélioré avec de meilleurs systèmes de gestion des paquets, Quoi ajuster, dnf, et Pac-Man. Malgré cela, vous rencontrez toujours des difficultés si vous devez installer différentes versions de la même application. O, si vous utilisez deux applications qui sont en conflit car liées à des versions spécifiques, Mais différent, d'une bibliothèque.

Une solution à ces problèmes réside dans les systèmes d'empaquetage et de déploiement d'applications.. Rapide est l'un des plus populaires. Il est basé sur un système de conditionnement et de mise en œuvre appelé Click, datant de la Ubuntu Touch initiative. AppImage et Paquet plat y en a-t-il d'autres que j'aurais pu trouver.

Ces systèmes encapsulent l'application ainsi que les dépendances et autres exigences dans un seul fichier compressé.. Après, l'application s'exécute dans une sorte de mini conteneur. Il est isolé et séparé des autres applications. Les bibliothèques et autres ressources avec lesquelles l'application est empaquetée ou dont elle a besoin ne sont disponibles que pour elle.

Ils ne sont pas installés au sens traditionnel du terme, ils ne génèrent donc aucun problème avec d'autres applications qui nécessitent des versions différentes des mêmes ressources. Vous pouvez même installer et exécuter des applications qui nécessitent des versions de bibliothèque en conflit, car chaque application se trouve dans son propre bac à sable..

Malgré cela, s'ils ne sont pas installés de la manière habituelle, Comment gérez-vous? Bon, un seul fichier de package est téléchargé, décompressez et montez comme un SquashFSsystème de fichiers virtuel. Il est alors présenté comme un environnement virtuel. Tout se passe dans les coulisses. Tout ce que vous saurez, c'est que vous avez installé une application et, maintenant, y a accès.

Depuis lors, car chaque fichier de package doit contenir toutes les ressources dont l'application a besoin, les fichiers de package peuvent être volumineux. Il est également facile de dupliquer une ressource que vous n'installeriez régulièrement qu'une seule fois., Quoi MySQL O apache. Si deux différents snap les applications nécessitent les mêmes ressources, chacun apporte son exemplaire.

Malgré cela, c'est un compromis pour la simplicité d'installation et l'élimination des maux de tête liés aux conflits de ressources.

Installation de Snapd

Snappy a été introduit avec Ubuntu 16.04, donc si vous utilisez cette version ou une version ultérieure, vous êtes prêt à commencer. Dans notre machine, Snappy s'installe à Manjaro 18.04, mais nous avons dû l'installer sur Fedora 31.

snap est à la fois le nom des fichiers du package et la commande que vous utilisez pour interagir avec eux. Derrière la scène, les snapd daemon est aussi le nom du paquet que vous devez installer si vous n'avez pas déjà Snappy sur votre ordinateur.

Installer snapd à Fedora, tapez la commande suivante:

sudo dnf installer snapd

Si vous devez l'installer sur Manjaro, utiliser ces commandes:

sudo pacman -Sy snapd
sudo systemctl enable --now snapd.socket

Vous pouvez utiliser le snap version commande pour voir la version du snap client, snapd démon et numéro de série du logiciel. Le nom et la version de votre distribution Linux et la version du noyau seront également affichés.

Écrivez ce qui suit:

version instantanée

Installation de packages instantanés

C'est une procédure assez simple pour installer un snap emballer. Vous pouvez utiliser snap chercher snap packages, puis installez celui que vous voulez.

Nous écrivons ce qui suit pour rechercher et installer l'éditeur d'images gimp:

snap trouver gimp

snap correspond à la piste de recherche “GIMP” et renvoie vos résultats. Il trouvera tout ce qui correspond ou mentionne votre terme de recherche.

Pour installer l'un des packages, nous utilisons la valeur de Name colonne, comme il est montré dans ce qui suit:

sudo snap installer gimp

Comme il se décharge, le pourcentage d'achèvement augmente et une barre de progression glisse de la gauche de la fenêtre du terminal. Lorsque l'installation est terminée, un message apparaît (comme il est montré dans ce qui suit) vous indiquant que le paquet a été installé.

Vous pouvez utiliser le df commande à vérifier la capacité et l'utilisation des différents systèmes de fichiers configurés sur votre ordinateur Linux. Si nous canalisons leur sortie vers grep commande et recherche “GIMP”, isoler l'entrée du paquet nous venons d'installer.

Nous écrivons ce qui suit:

df | grep gimp

Cela nous montre que le package instantané a été monté comme s'il s'agissait d'un système de fichiers. Le point de montage est sur le snap répertoire ici: /snap/gimp/252. le “252” est le numéro de version de cette version de gimp.

EN RELATION: Comment utiliser la commande grep sous Linux

Le système de fichiers apparaît comme: /dev/loop18. Les fichiers de périphérique en boucle sont utilisés pour rendre les fichiers normaux accessibles en tant que périphériques de bloc. En général, sont utilisés pour monter des systèmes de fichiers sur des images disque. Pour ce cas, ils chevauchent le SquashFS système de fichiers à l'intérieur snap emballer. le “18” signifie qu’il s’agit de l' 18 /dev/loop fichier de périphérique utilisé sur cet ordinateur Linux.

Nous pouvons utiliser le df commande pour vérifier cela rapidement. Nous utiliserons le – t (Type) option pour limiter la sortie à SquashFS types de fichiers uniquement.

Nous écrivons ce qui suit:

df -t squashfs

Le monté SquashFS les systèmes de fichiers sont répertoriés. UNE /dev/loop Le fichier de périphérique gère chaque, et il y a 18 d'eux.

Chaque système de fichiers est monté dans un répertoire dans le /snap annuaire. Malgré cela, cela ne veut pas dire qu'il y a 18 snap packages installés sur cet ordinateur. Ceci est une distribution Ubuntu, donc certains snap Les paquets sont installés immédiatement et nous venons d’en installer un autre.

En même temps, lors de l'installation snapd, installer certains cœurs snap des paquets pour répondre aux besoins des autres snap paquets.

Nous pouvons utiliser le snap list commander, comme il est montré dans ce qui suit, pour répertorier ceux qui sont installés snap paquets:

liste d'accrochages

La sortie était un peu large, donc la fin des annonces est indiquée ci-dessous.

Voici la liste complète:

Name                 Version                    Rev   Tracking  Publisher    Notes
core                 16-2.43.3                  8689  stable    canonical*   core
core18               20200124                   1668  stable    canonical*   base
gimp                 2.10.18                    252   snapcrafters stables -
gnome-3-26-1604      3.26.0.20191114            98    stable/… canonique*   -
gnome-3-28-1804 3.28.0-16-g27c9498.27c9498 116   canonique stable*   -
gnome-calculator 3.34.1+git1.d34dc842       544   stable/… canonique*   -
gnome-characters v3.32.1+git3.b9120df       399   stable/… canonique*   -
gnome-logs           3.34.0                     81    stable/… canonique*   -
gnome-system-monitor 3.32.1-3-g0ea89b4922       127   stable/… canonique*   -
gtk-thèmes-communs 0.1-28-g1503258            1440  stable/… canonique*   -

Comme tu peux le voir, il y a 10 packages snap installés, non 18. Malgré cela, ces 10 les paquets ont conduit à 18 SquashFS systèmes de fichiers. Les colonnes du tableau sont explicites, mais voici quelques précisions:

  • nom: Le nom de snap paquet qui a été installé.
  • Version: Le numéro de version du logiciel dans le snap emballer.
  • Rvdo: Le numéro de révision du snap emballer.
  • Le suivi: Le canal est snap moniteurs de paquet pour les mises à jour. Ils sont quatre:
    • Stable: Le canal par défaut. Comme le nom l'indique, ce canal contient les packages les plus stables.
    • Candidat: Ce canal est moins stable, mais il en est très proche car il contient un logiciel de niveau candidat à la version, qui est le code complet. Passer les tests finaux avant de passer au canal stable.
    • Bêta: Ce canal présente une qualité de cycle de développement tardif, mais pas garanti d'être stable.
    • Devrait: Pour les premiers testeurs de build. Vous ne devez pas utiliser ce canal pour des travaux importants ou sur un ordinateur de production. voici des dragons!
  • Éditeur: Personne, entreprise ou organisation qui a publié le snap emballer. S'il s'agissait d'un éditeur vérifié (et votre fenêtre de terminal prend en charge Unicode), vous verrez une coche verte à côté du nom de l'éditeur. Si vous ne pouvez pas afficher une coche, vous verrez un astérisque (*).
  • Remarques: Tout commentaire ou information supplémentaire apparaîtra ici.

Canaux rapides

Vous pouvez utiliser le info option pour obtenir une description d'un snap emballer.

Pour le faire, nous écrivons ce qui suit:

informations instantanées gtk-common-themes

Nous pouvons voir quel canal suit le paquet et la version du logiciel dans le snap bouquets sur chacune des quatre chaînes. Dans la plupart des circonstances, doit rester dans le canal stable.

UNE snap Le package est vérifié quatre fois par jour pour voir s'il existe une version plus récente du logiciel disponible sur la chaîne que vous regardez ou “tracé”. Si vous voulez changer de chaîne snap pack de piste, vous pouvez utiliser le refresh et --channel options.

Pour le faire, nous écrivons ce qui suit:

sudo snap refresh gtk-common-themes --channel=beta

Si une version plus récente du logiciel était disponible, installerait, mais ce n'était pas le cas ici. malgré cela, les snap le paquet suit maintenant le canal bêta. Dès la sortie d'une nouvelle version bêta, téléchargements et mises à jour automatiques.

Vous pouvez utiliser le --list option pour vérifier si des mises à jour sont disponibles pour l'un des snap packages installés sur votre ordinateur.

Pour le faire, nous écrivons ce qui suit:

sudo snap refresh --list

Il vous dira si l'un des canaux snap les colis sur votre ordinateur qu'ils suivent contiennent des versions logicielles plus récentes.

Si une version plus récente du logiciel est disponible, vous pouvez utiliser le refresh option, comme il est montré dans ce qui suit, pour forcer manuellement une mise à jour:

sudo snap refresh gtk-common-themes

Supprimer un package instantané

Pour désinstaller un snap emballer, vous pouvez utiliser l'option de suppression, comme il est montré dans ce qui suit:

sudo snap supprimer gimp

L'aide-mémoire instantané

L'utilisation des packages instantanés est assez simple, mais nous avons compilé une liste de quelques commandes qui vous aideront:

  • Pour rechercher un colis: snap find package_name
  • Pour installer un paquet: sudo snap install package_name
  • Pour voir tous les packages installés: snap list
  • Pour plus d'informations sur un seul paquet: snap info package_name
  • Pour changer le canal suivi par un paquet pour les mises à jour: sudo snap refresh package_name --channel=channel_name
  • Pour voir si les mises à jour sont prêtes pour les packages installés: sudo snap refresh --list
  • Pour mettre à jour manuellement un package: sudo snap refresh package_name
  • Pour désinstaller un package: sudo snap remove package_name

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.