Homebrew: enumera las versiones disponibles con el nuevo formato fórmula @ versión

101

Homebrew se ha desaprobado recientemente homebrew/versionsa favor de que las versiones estén disponibles a homebrew/coretravés del nuevo formula@versionformato. Por ejemplo (según esta respuesta ), puede hacerlo brew install [email protected].

Por supuesto, esto no funciona para versiones arbitrarias. Por ejemplo, install [email protected]aparece "Error: No se encontraron fórmulas en los grifos".

Con el método anterior, podía ejecutar brew versions <formula>para ver las versiones disponibles. ¿Cómo puedo enumerar las versiones disponibles ahora?

Phlippie Bosman
fuente

Respuestas:

118

Puede buscar versiones usando brew search.

Por ejemplo:

$ brew search postgresql
postgresql ✔      [email protected]     [email protected]
Amelio Vázquez-Reina
fuente
37
Eso es lo que temía ... El programa para el que necesito una versión antigua solo tiene la versión actual disponible. Ah bueno.
Phlippie Bosman
15

Y en caso de que solo quisiera buscar la versión específica utilizada por una fórmula después de encontrarla search, puede obtenerla infocon:

brew info <formula>
# or for a cask:
brew cask info <formula>

por ejemplo brew info postgresql@10, obrew cask info vlc

Y si no puede encontrar una versión antigua popular de un barril, es posible que pueda obtenerla a través de homebrew-cask-versions, que se puede instalar con brew tap homebrew/cask-versions.

qix
fuente
10

Esta es una pregunta antigua, pero encontré una forma "mejor" (para mí) de hacer esto:

brew info --json PACKAGE_NAME | jq -r '.[].versioned_formulae[]'

Por ejemplo, en el caso del paquete node, se imprimirá:

$ brew info --json node | jq -r '.[].versioned_formulae[]'
node@10
node@12
node@8

Necesitará el programa jqinstalado para que pueda profundizar en el JSON apropiado, ( brew install jq).

Dado que lo anterior es complicado de escribir / recordar, sugiero configurar un alias o función en su shell favorito.

Jrop
fuente
¡Esto es increíble!
Phlippie Bosman