Un snap peut-il être construit de telle sorte que, lorsque l'utilisateur essaie de l'installer, le snap installe également un autre paquet ? Par exemple, wget
. Merci.
Réponses
Trop de publicités?La réponse courte à votre question est : non, les snap ne peuvent pas dépendre des .deb de telle sorte que, lorsque le snap est installé, le .deb est également installé.
Cependant, la réponse la plus longue est que, lorsque vous construisez le snap, vous pouvez regrouper tous les .debs que vous voulez dans celui-ci. Pour utiliser votre exemple, voici le snapcraft.yaml pour un snap qui regroupe wget :
name: my-snap-name # you probably want to 'snapcraft register <name>'
base: core18 # the base snap is the execution environment for this snap
version: '0.1' # just for humans, typically '1.2+git' or '1.3.2'
summary: Single-line elevator pitch for your amazing snap # 79 char long summary
description: |
This is my-snap's description. You have a paragraph or two to tell the
most important story about your snap. Keep it under 100 words though,
we live in tweetspace and your description wants to look good in the snap
store.
grade: devel # must be 'stable' to release into candidate/stable channels
confinement: strict # 'strict' confinement means fully confined
parts:
my-part:
plugin: nil
# Include the wget .deb from the Ubuntu package archive
stage-packages: [wget]
apps:
# expose wget to end-users
wget:
command: usr/bin/wget
plugs: [network, home, removable-media]
Exécuter snapcraft
sur ça et vous vous retrouvez avec un snap qui a une wget
app. Il n'intègre pas wget au moment de l'installation comme vous l'avez demandé, mais en l'intégrant au moment de la construction, il atteint peut-être votre objectif final.
Les paquets Snap sont autonomes et ne nécessitent aucune dépendance extérieure pour fonctionner. Voir ici pour plus d'informations Linux Commando : Snaps