4 votes

Obtenir la liste complète de toutes les dépendances et sous-dépendances dans Homebrew *avant* l'installation

Je constate que Homebrew ne fait pas un bon travail en listant la liste réelle des dépendances d'un paquet:

$ brew info ffmpeg
ffmpeg: stable 5.0.1 (bottled), HEAD
Lecture, enregistrement, conversion et diffusion audio et vidéo
https://ffmpeg.org/
Non installé
De : https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/ffmpeg.rb
Licence : GPL-2.0-or-later
==> Dépendances
Construction : nasm , pkg-config 
Requis : aom , dav1d , fontconfig , freetype , frei0r , gnutls , lame , libass , libbluray , librist , libsoxr , libvidstab , libvmaf , libvorbis , libvpx , opencore-amr , openjpeg , opus , rav1e , rubberband , sdl2 , snappy , speex , srt , tesseract , theora , webp , x264 , x265 , xvid , xz , zeromq , zimg 

On pourrait être excusé si l'on pensait que ce sont toutes les dépendances nécessaires, mais chaque dépendance a des dépendances qui ne sont pas listées. Un exemple :

$ brew info rav1e
rav1e: stable 0.5.1 (bottled), HEAD
Encodeur vidéo AV1 le plus rapide et le plus sûr
https://github.com/xiph/rav1e
Non installé
De : https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/rav1e.rb
Licence : BSD-2-Clause
==> Dépendances
Construction : cargo-c , nasm , rust 

Certaines de ces sous-dépendances peuvent être une sacrée surprise, que ce soit parce qu'elles nécessitent une compilation, parce qu'elles prennent beaucoup d'espace disque, ou les deux (par exemple, Rust).

Y a-t-il un moyen de demander à Homebrew de lister :

  1. La liste réelle complète des dépendances et sous-dépendances
  2. Combien de ces paquets nécessiteront une compilation
  3. L'espace disque requis

?

Je crois que ces informations seraient très utiles, particulièrement pour les personnes ayant des processeurs plus anciens et plus lents (et plus chauds) et moins d'espace disque. Je me rappelle vaguement qu'il était possible de forcer l'installation uniquement des binaires, pour éviter l'étape de compilation (si possible), mais savoir combien d'espace disque on aura effectivement besoin est également utile.

1 votes

Homebrew installera toujours des binaires (bouteilles) sauf s'il ne peut pas, auquel cas il compilera ou échouera.

1 votes

J'ai supprimé la diatribe. Autant je comprends votre frustration, cela n'aide pas à rendre la question plus facile à comprendre. Les demandes de fonctionnalités pour Homebrew peuvent être soumises sur brew.sh

3voto

nohillside Points 82672

Selon man brew

 `brew deps --include-build ffmpeg ` 

affichera l'arborescence complète des dépendances, y compris les dépendances de construction.

0 votes

Il ne le fait pas, du moins pas complètement. ffmpeg dépend de rav1e, et rav1e dépend de rust, et rust n'est pas dans l'arborescence des dépendances mentionnées par brew deps ffmpeg. Rust est 'juste' une dépendance de construction de rav1e, mais évidemment si je le supprime après la construction, je devrais le reconstruire à chaque fois que rav1e est mis à jour.

0 votes

De plus, je ne vois pas si brew deps whatever retourne plus de paquets que brew info whatever, ces paquets supplémentaires ne figurent pas dans les informations, car ils sont nécessaires et seront installés si vous ne les avez pas déjà.

0 votes

@user1256923 Il existe plusieurs options pour des dépendances supplémentaires répertoriées dans la page de manuel, cela vaut peut-être la peine d'essayer certaines d'entre elles.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X