Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
snap [Le 26/02/2024, 17:26] lyondif02 [Voir aussi] reformulation |
snap [Le 25/05/2025, 12:58] (Version actuelle) geole [Cas général] |
||
---|---|---|---|
Ligne 24: | Ligne 24: | ||
===== Installer snapd ===== | ===== Installer snapd ===== | ||
- | Snap est pré-installé avec toutes les versions d’Ubuntu… en version bureau, mais non sur la version serveur.\\ | + | Snap est pré-installé dans Ubuntu depuis la version 16.04 LTS au sein de la configuration bureau (« Desktop »)(([[http://www.webupd8.org/2015/04/ubuntu-desktop-to-eventually-switch-to.html|Ubuntu Desktop To Eventually Switch To Snap Packages By Default]]. Article publié le 03/04/2015 sur Web Upd8.))(([[https://askubuntu.com/questions/618471/why-is-ubuntu-moving-to-snap-packages|Why is Ubuntu moving to Snap packages?]] Sujet publié le 05/05/2015 sur le forum AskUbuntu. Évocations de l’intérêt de l’approche Snap en coexistence avec les paquets Debian.)), mais non au sein de la configuration serveur. |
Vous pouvez l'installer avec la commande suivante : | Vous pouvez l'installer avec la commande suivante : | ||
- | <code>sudo apt install snapd</code> | + | sudo apt install snapd |
- | <note warning>Si votre serveur est un [[wpfr>Serveur_dédié_virtuel|VPS]] hébergé sur un serveur hôte avec [[wpfr>OpenVZ|OpenVZ]], snap ne fonctionnera pas ou fonctionnera de manière dégradée. La commande suivante permet de connaitre la technologie de virtualisation sous-jacente : | + | |
- | <code bash>systemd-detect-virt | + | <note warning>Si votre serveur est un [[wpfr>Serveur dédié virtuel|VPS]] hébergé sur un serveur hôte avec [[wpfr>OpenVZ|OpenVZ]], Snap ne fonctionnera pas ou fonctionnera de manière dégradée. La commande suivante permet de connaitre la technologie de virtualisation sous-jacente : |
- | # au besoin, faire précéder la commande de : sudo | + | systemd-detect-virt |
- | # retour attendu dans le cas de OpenVZ : | + | # au besoin, faire précéder la commande de : sudo |
- | openvz</code></note> | + | # retour attendu dans le cas de OpenVZ : openvz |
+ | </note> | ||
===== Installer une application snap ===== | ===== Installer une application snap ===== | ||
Désormais vous pouvez directement installer des applications snap en passant par la [[:gnome-software|logithèque Ubuntu]] comme pour les autres applications. | Désormais vous pouvez directement installer des applications snap en passant par la [[:gnome-software|logithèque Ubuntu]] comme pour les autres applications. | ||
Ligne 63: | Ligne 65: | ||
==== Cas général ==== | ==== Cas général ==== | ||
Mise à jour des applications : | Mise à jour des applications : | ||
+ | |||
+ | Les applications se mettent à jour automatiquement au démarrage de l'ordinateur par le [[:systemd|service]] snapd et régulièrement toutes les six heures. La vérification est possible par cette commande [[https://forum.ubuntu-fr.org/viewtopic.php?pid=22840295#p22840295|snap refresh --time]]. | ||
+ | Le déclenchement immédiat peut être provoqué par cette commande | ||
sudo snap refresh | sudo snap refresh | ||
==== Mise à jour du magasin d'application snap-store ==== | ==== Mise à jour du magasin d'application snap-store ==== | ||
Ligne 197: | Ligne 202: | ||
Comme indiqué ci-dessus, la commande ''flatpak'' équivalente est la suivante : | Comme indiqué ci-dessus, la commande ''flatpak'' équivalente est la suivante : | ||
flatpak list | flatpak list | ||
- | ===== Les répertoires ===== | + | ===== Répertoires de référence ===== |
Un système d’exploitation présente une arborescence de dossiers et fichiers organisés par défaut. En l’occurrence les fichiers de configuration sont habituellement trouvés dans le dossier **/etc**, les journaux (« log files ») dans le dossier **/var/log**. | Un système d’exploitation présente une arborescence de dossiers et fichiers organisés par défaut. En l’occurrence les fichiers de configuration sont habituellement trouvés dans le dossier **/etc**, les journaux (« log files ») dans le dossier **/var/log**. | ||
Ligne 203: | Ligne 208: | ||
Comme David Clinton l’explique dans son article (en anglais) sur FreeCodeCamp.org(([[https://www.freecodecamp.org/news/managing-ubuntu-snaps/#understanding-the-snap-file-system|How to manage Ubuntu Snaps: the stuff no one tells you]]. Article de David Clinton publié le 19/08/2019 sur FreeCodeCamp.org ([[https://archive.wikiwix.com/cache/index2.php?url=https%3A%2F%2Fwww.freecodecamp.org%2Fnews%2Fmanaging-ubuntu-snaps%2F%23understanding-the-snap-file-system#federation=archive.wikiwix.com&tab=url|archive]]).)), les répertoires suivants sont à considérer lors du déploiement de logiciel à partir de paquet snap : | Comme David Clinton l’explique dans son article (en anglais) sur FreeCodeCamp.org(([[https://www.freecodecamp.org/news/managing-ubuntu-snaps/#understanding-the-snap-file-system|How to manage Ubuntu Snaps: the stuff no one tells you]]. Article de David Clinton publié le 19/08/2019 sur FreeCodeCamp.org ([[https://archive.wikiwix.com/cache/index2.php?url=https%3A%2F%2Fwww.freecodecamp.org%2Fnews%2Fmanaging-ubuntu-snaps%2F%23understanding-the-snap-file-system#federation=archive.wikiwix.com&tab=url|archive]]).)), les répertoires suivants sont à considérer lors du déploiement de logiciel à partir de paquet snap : | ||
- | * ''/snap/'' : dossiers virtuels, en lecture seule, des fichiers snap en exécution (fichiers Snap « montés ») ; | + | * ''/snap/'' : dossiers virtuels, en lecture seule, des applications snap en exécution (fichiers snap « montés ») ; |
- | * ''/var/snap/'' : données et fichiers de configuration associés aux fichiers snap en exécution ; | + | * ''/var/snap/'' : données et fichiers de configuration associés aux applications snap en exécution ; |
* ''/var/lib/snapd/'' : base du démon Snap et entrepôt des fichiers snap récupérés ; | * ''/var/lib/snapd/'' : base du démon Snap et entrepôt des fichiers snap récupérés ; | ||
- | * ''/home/$USER/snap/'', où ''$USER'' est la variable désignant le compte utilisateur courant : dossier des données et fichiers de configuration propres au compte utilisateur considéré. | + | * ''/home/$USER/snap/'' : données et fichiers de configuration de la session utilisateur ''$USER''. |
Scénario : je souhaite modifier les modèles de [[:Gimp]]. | Scénario : je souhaite modifier les modèles de [[:Gimp]]. | ||
* La documentation indique que le fichier concerné, //templaterc//, est normalement situé dans le répertoire ''/etc/gimp/2.10/'' ou ''/home/$USER/gimp/…''. | * La documentation indique que le fichier concerné, //templaterc//, est normalement situé dans le répertoire ''/etc/gimp/2.10/'' ou ''/home/$USER/gimp/…''. | ||
- | * Dans le cas d’une installation de Gimp par Snap, le fichier associé à ma session utilisateur sera disponible dans ''/home/$USER/snap/gimp/105/.config/GIMP/2.10'' (ici, 105 correspond au numéro de révision de la version active de Gimp dans le système utilisé). | + | * Dans le cas d’une installation de Gimp par Snap, le fichier associé à ma session utilisateur ''$USER'' sera disponible dans ''/home/$USER/snap/gimp/105/.config/GIMP/2.10'' (ici, 105 correspond au numéro de révision de la version active de Gimp dans le système utilisé). |
Dans le cas de l’installation standard d'une application snap, l'accès est restreint aux répertoires et fichiers de l'utilisateur, stockés dans le dossier de ce dernier. L'accès par les liens symboliques qui pointent à l'extérieur des répertoires de l'utilisateur est refusé. Cela correspond à la notion de //confinement//. | Dans le cas de l’installation standard d'une application snap, l'accès est restreint aux répertoires et fichiers de l'utilisateur, stockés dans le dossier de ce dernier. L'accès par les liens symboliques qui pointent à l'extérieur des répertoires de l'utilisateur est refusé. Cela correspond à la notion de //confinement//. | ||
Ligne 247: | Ligne 252: | ||
Ce retour indique que la fonctionnalité est prévue mais qu'elle n'est pas activée. | Ce retour indique que la fonctionnalité est prévue mais qu'elle n'est pas activée. | ||
- | Pour activer la fonctionnalité, il est nécessaire de connaitre un mot de passe administrateur. L’appartenance au groupe //sudo// n’est pas requise. Voici la commande à saisir : | + | Pour activer la fonctionnalité, il est nécessaire de connaître un mot de passe administrateur. L’appartenance au groupe //sudo// n’est pas requise. Voici la commande à saisir : |
snap connect mon_application:removable-media :removable-media | snap connect mon_application:removable-media :removable-media | ||
+ | | ||
+ | Si la commande répond "//erreur : trop d'arguments pour la commande//", faire <code bash>snap connect mon_application:removable-media</code> | ||
Une nouvelle extraction de l'état (cf. commande supra) rapportera une réponse sans équivoque : | Une nouvelle extraction de l'état (cf. commande supra) rapportera une réponse sans équivoque : |