Comment rechercher un fichier dans des packages apk

13

Je voudrais savoir, étant donné le nom d'un binaire, quel paquet dois-je installer sur Alpine Linux.

Comment puis je faire ça?

Antoine
la source

Réponses:

11

Vous avez essentiellement trois façons.

Premièrement: le package doit être installé et vous devez spécifier le chemin complet:

apk info --who-owns /path/to/the/file

Deuxièmement: utilisez le site Web pkgs.alpinelinux.org

Troisièmement: utilisez l'API api.alpinelinux.org en filtrant la sortie json. Pour cela, vous avez besoin d'un analyseur json comme jq:

apk add jq

puis utilisez l'API avec les instructions fournies ici

.: Francesco

Francesco Colista
la source
apk infosemble être plus proche de dpkg -S. Dans mon cas, j'essaie de répondre à la question "Quel paquet fournit ce binaire dont je connais le nom", plutôt que d'où vient ce fichier préexistant.
Att Righ
par conséquent, apk info --who-owns /with/th/full/pathest l'outil si vous avez installé le package, sinon à partir d'une CLI n'est pas possible. Vous devriez consulter le site Web [pkgs.alpinelinux.org/contents] ( pkgs.alpinelinux.org/contents ). Vous y écrivez le nom binaire et il retourne le package qui contient ce binaire.
Francesco Colista
L' utilisation apk info --who-owns, comment faites-vous si vous ne connaissez pas le chemin complet du fichier?
Elouan Keryell-Even
Non, vous ne pouvez pas encore ... désolé
Francesco Colista
2

Vous recherchez l'équivalent de Debian apt-filepour Alpine. La recherche de cela donne un fichier apk .

Fondamentalement apt-file mais pour alpine.

Gilles 'SO- arrête d'être méchant'
la source
1
Voilà ce que je recherche. Il semble que le fichier apk ne soit pas un package alpin, vous pouvez l'installer avec go get github.com/jessfraz/apk-file(il fonctionne heureusement sur des systèmes non alpins). Le binaire est probablement statique, il peut donc être copié dans des conteneurs Docker, etc.
Att Righ
1
apt-file analyse essentiellement le site Web pkgs.alpinelinux.org ... il serait donc préférable d'utiliser un décodage JSON comme je l'ai écrit auparavant, car il n'a pas besoin d'un logiciel gonflé pour atteindre le même objectif.
Francesco Colista