Me he dado cuenta de que Homebrew no hace un buen trabajo a la hora de listar la lista real de dependencias de un paquete:
$ brew info ffmpeg
ffmpeg: stable 5.0.1 (bottled), HEAD
Play, record, convert, and stream audio and video
https://ffmpeg.org/
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/ffmpeg.rb
License: GPL-2.0-or-later
==> Dependencies
Build: nasm , pkg-config
Required: 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
Uno sería excusado si la expectativa fuera que estos son todas las dependencias necesarias , pero cada dependencia tiene dependencias que no están en la lista. Un ejemplo:
$ brew info rav1e
rav1e: stable 0.5.1 (bottled), HEAD
Fastest and safest AV1 video encoder
https://github.com/xiph/rav1e
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/rav1e.rb
License: BSD-2-Clause
==> Dependencies
Build: cargo-c , nasm , rust
Algunas de dichas subdependencias pueden resultar un choque desagradable, ya sea porque necesitan compilación, porque ocupan mucho espacio en el disco, o ambas cosas (por ejemplo, Rust).
¿Hay alguna manera de tener la lista de Homebrew:
- La lista completa real de dependencias y subdependencias
- Cuántos de dichos paquetes necesitarán compilación
- el espacio de disco necesario
?
Creo que estas informaciones serían bastante útiles, especialmente para las personas con CPUs más antiguas y lentas (y más calientes), y con menos espacio en el disco. Recuerdo vagamente que uno podría forzar de alguna manera sólo la instalación de los binarios, para evitar el paso de la compilación (si es posible), pero saber cuánto espacio en el disco uno necesitará realmente también es útil.