installation - now - ¿Homebrew instala una versión específica de fórmula?
homebrew versions deprecated (20)
¿Cómo instalo una versión específica de una fórmula en homebrew? Por ejemplo, postgresql-8.4.4 en lugar del último 9.0.
Flujo de trabajo simple
Ahora que Homebrew / versiones ha quedado en desuso, Homebrew / core admite varias versiones de fórmulas con un nuevo formato de denominación.
Para instalar una versión específica, por ejemplo, postgresql 9.5 simplemente ejecuta:
$ brew install [email protected]
Para listar las versiones disponibles ejecute una búsqueda con @:
$ brew search postgresql@
==> Searching local taps...
[email protected] ✔ [email protected] [email protected] [email protected]
Instalar una versión antigua del paquete brew (ejemplo de Flyway 4.2.0)
Encuentra tu local homebrew git dir o clona Homebrew / homebrew-core localmente
cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/
O
git clone [email protected]:Homebrew/homebrew-core.git
Listar todas las versiones disponibles
git log master -- Formula/flyway.rb
Copie la ID de confirmación para la versión que desea e instálela directamente
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/793abfa325531415184e1549836c982b39e89299/Library/Formula/flyway.rb
( He reeditado mi respuesta para brindar un flujo de trabajo más completo para instalar / usar versiones de software anteriores con homebrew. No dude en agregar una nota si encuentra mejor la versión anterior ) .
Comencemos con el caso más simple:
1) Compruebe si la versión ya está instalada (pero no está activada)
Cuando homebrew instala una nueva fórmula, la coloca en un directorio versionado como /usr/local/Cellar/postgresql/9.3.1
. Solo los enlaces simbólicos a esta carpeta se instalan globalmente. En principio, esto hace que sea bastante fácil cambiar entre dos versiones instaladas. (*)
Si ha estado utilizando Homebrew por más tiempo y nunca ha eliminado versiones anteriores (utilizando, por ejemplo, la brew cleanup
), es probable que todavía existan versiones anteriores de su programa. Si simplemente desea activar esa versión anterior, brew switch
es la forma más fácil de hacer esto.
Verifique con la brew info postgresql
(o con el brew switch postgresql <TAB>
) si la versión anterior está instalada
$ brew info postgresql
postgresql: stable 9.3.2 (bottled)
http://www.postgresql.org/
Conflicts with: postgres-xc
/usr/local/Cellar/postgresql/9.1.5 (2755 files, 37M)
Built from source
/usr/local/Cellar/postgresql/9.3.2 (2924 files, 39M) *
Poured from bottle
From: https://github.com/Homebrew/homebrew/commits/master/Library/Formula/postgresql.rb
# … and some more
Vemos que alguna versión anterior ya está instalada. Podemos activarlo utilizando el brew switch
:
$ brew switch postgresql 9.1.5
Cleaning /usr/local/Cellar/postgresql/9.1.5
Cleaning /usr/local/Cellar/postgresql/9.3.2
384 links created for /usr/local/Cellar/postgresql/9.1.5
Revisemos lo que está activado:
$ brew info postgresql
postgresql: stable 9.3.2 (bottled)
http://www.postgresql.org/
Conflicts with: postgres-xc
/usr/local/Cellar/postgresql/9.1.5 (2755 files, 37M) *
Built from source
/usr/local/Cellar/postgresql/9.3.2 (2924 files, 39M)
Poured from bottle
From: https://github.com/Homebrew/homebrew/commits/master/Library/Formula/postgresql.rb
# … and some more
Tenga en cuenta que la estrella *
ha movido a la versión recién activada
(*) Tenga en cuenta que brew switch
solo funciona siempre que sigan existiendo todas las dependencias de la versión anterior. En algunos casos, puede ser necesaria una reconstrucción de la versión anterior. Por lo tanto, el uso de brew switch
es principalmente útil cuando uno quiere cambiar entre dos versiones que no están demasiado alejadas.
2) Compruebe si la versión está disponible como un toque
Especialmente para proyectos de software más grandes, es muy probable que exista una demanda lo suficientemente alta para varias versiones principales (potencialmente incompatibles con API) de una determinada pieza de software. A partir de marzo de 2012, Homebrew 0.9 ofrece un mecanismo para esto: brew tap
y el repositorio de versiones de homebrew .
Ese repositorio de versiones puede incluir backports de versiones anteriores para varias fórmulas. (En su mayoría, solo los grandes y famosos, pero por supuesto, también tendrán varias fórmulas para postgresql).
brew search postgresql
te mostrará dónde mirar:
$ brew search postgresql
postgresql
homebrew/versions/postgresql8 homebrew/versions/postgresql91
homebrew/versions/postgresql9 homebrew/versions/postgresql92
Simplemente podemos instalarlo escribiendo
$ brew install homebrew/versions/postgresql8
Cloning into ''/usr/local/Library/Taps/homebrew-versions''...
remote: Counting objects: 1563, done.
remote: Compressing objects: 100% (943/943), done.
remote: Total 1563 (delta 864), reused 1272 (delta 620)
Receiving objects: 100% (1563/1563), 422.83 KiB | 339.00 KiB/s, done.
Resolving deltas: 100% (864/864), done.
Checking connectivity... done.
Tapped 125 formula
==> Downloading http://ftp.postgresql.org/pub/source/v8.4.19/postgresql-8.4.19.tar.bz2
# …
Tenga en cuenta que esto ha tocado automáticamente el tap de homebrew/versions
. (Verifique con el brew tap
, elimínelo con la brew untap homebrew/versions
). Lo siguiente hubiera sido equivalente:
$ brew tap homebrew/versions
$ brew install postgresql8
Siempre que las fórmulas de la versión con backported se mantengan actualizadas, este enfoque es probablemente la mejor manera de lidiar con software más antiguo.
3) Prueba alguna fórmula del pasado.
Los siguientes enfoques se enumeran principalmente para completar. Ambos intentan resucitar alguna fórmula no muerta del repositorio de cerveza. Debido a cambios en las dependencias, cambios en la API en la especificación de la fórmula o simplemente un cambio en la URL de descarga, las cosas pueden o no funcionar.
Dado que todo el directorio de fórmulas es un repositorio de git, se pueden instalar versiones específicas utilizando comandos de git simples. Sin embargo, tenemos que encontrar una manera de llegar a un compromiso donde la versión anterior estuviera disponible.
a) tiempos históricos
Entre agosto de 2011 y octubre de 2014 , Homebrew tuvo un comando de brew versions
, que escupió todas las versiones disponibles con sus respectivos hashes SHA. A partir de octubre de 2014, tiene que hacer un brew tap homebrew/boneyard
antes de poder usarlo. Como lo sugiere el nombre del grifo, probablemente debería hacerlo solo como último recurso.
P.ej
$ brew versions postgresql
Warning: brew-versions is unsupported and may be removed soon.
Please use the homebrew-versions tap instead:
https://github.com/Homebrew/homebrew-versions
9.3.2 git checkout 3c86d2b Library/Formula/postgresql.rb
9.3.1 git checkout a267a3e Library/Formula/postgresql.rb
9.3.0 git checkout ae59e09 Library/Formula/postgresql.rb
9.2.4 git checkout e3ac215 Library/Formula/postgresql.rb
9.2.3 git checkout c80b37c Library/Formula/postgresql.rb
9.2.2 git checkout 9076baa Library/Formula/postgresql.rb
9.2.1 git checkout 5825f62 Library/Formula/postgresql.rb
9.2.0 git checkout 2f6cbc6 Library/Formula/postgresql.rb
9.1.5 git checkout 6b8d25f Library/Formula/postgresql.rb
9.1.4 git checkout c40c7bf Library/Formula/postgresql.rb
9.1.3 git checkout 05c7954 Library/Formula/postgresql.rb
9.1.2 git checkout dfcc838 Library/Formula/postgresql.rb
9.1.1 git checkout 4ef8fb0 Library/Formula/postgresql.rb
9.0.4 git checkout 2accac4 Library/Formula/postgresql.rb
9.0.3 git checkout b782d9d Library/Formula/postgresql.rb
Como puedes ver, desaconseja su uso. Homebrew escupe todas las versiones que puede encontrar con su heurística interna y te muestra una forma de recuperar las fórmulas anteriores. Vamos a intentarlo.
# First, go to the homebrew base directory
$ cd $( brew --prefix )
# Checkout some old formula
$ git checkout 6b8d25f Library/Formula/postgresql.rb
$ brew install postgresql
# … installing
Ahora que la versión anterior de postgresql está instalada, podemos volver a instalar la última fórmula para mantener limpio nuestro repositorio:
$ git checkout -- Library/Formula/postgresql.rb
brew switch
es tu amigo para cambiar entre lo viejo y lo nuevo.
b) tiempos prehistóricos
Para necesidades especiales, también podemos probar nuestra propia excavación a través del repositorio de homebrew.
$ git log -S''8.4.4'' -- Library/Formula/postgresql.rb
git log -S
busca todas las confirmaciones en las que se agregó o eliminó la cadena ''8.4.4''
en el archivo Library/Formula/postgresql.rb
. Conseguimos dos confirmaciones como resultado.
commit 7dc7ccef9e1ab7d2fc351d7935c96a0e0b031552
Author: Aku Kotkavuo
Date: Sun Sep 19 18:03:41 2010 +0300
Update PostgreSQL to 9.0.0.
Signed-off-by: Adam Vandenberg
commit fa992c6a82eebdc4cc36a0c0d2837f4c02f3f422
Author: David Höppner
Date: Sun May 16 12:35:18 2010 +0200
postgresql: update version to 8.4.4
Obviamente, fa992c6a82eebdc4cc36a0c0d2837f4c02f3f422
es el compromiso que nos interesa. Como este compromiso es bastante antiguo, intentaremos degradar la instalación completa de Homebrew (de esta manera, la fórmula API es más o menos segura de ser válida):
$ git checkout -b postgresql-8.4.4 fa992c6a82eebdc4cc36a0c0d2837f4c02f3f422
$ brew install postgresql
$ git checkout master
$ git branch -d postgresql-8.4.4
Puede omitir el último comando para mantener la referencia en su repositorio git.
Una nota: cuando comprueba el compromiso anterior, usted baja temporalmente su instalación de homebrew. Por lo tanto, debe tener cuidado ya que algunos comandos en homebrew pueden ser diferentes a la versión más reciente.
4) Escribir manualmente una fórmula
No es demasiado difícil y puedes subirlo a Homebrew-Versions .
A.) Bonus: Fijación
Si desea mantener una versión determinada de, por ejemplo, postgresql, evite que se actualice cuando realice la brew update; brew upgrade
natural brew update; brew upgrade
procedimiento de brew update; brew upgrade
, puede fijar una fórmula:
$ brew pin postgresql
Las fórmulas ancladas se enumeran en /usr/local/Library/PinnedKegs/
y una vez que desee traer los últimos cambios y actualizaciones, puede volver a separarlo :
$ brew unpin postgresql
Acabo de utilizar Homebrew para volver a Maven 2.2.1 desde que Maven instaló Maven 3.0.3.
Primero tienes que dejar el directorio de Maven para que
$ brew unlink maven
Usa el comando brew tap
$ brew tap homebrew/versions Cloning into ''/usr/local/Library/Taps/homebrew-versions''... remote: Counting objects: 590, done. remote: Compressing objects: 100% (265/265), done. remote: Total 590 (delta 362), reused 549 (delta 325) Receiving objects: 100% (590/590), 117.49 KiB | 79 KiB/s, done. Resolving deltas: 100% (362/362), done. Tapped 50 formula
Ahora puedes instalar la fórmula maven2:
$ brew install maven2 ==> Downloading http://www.apache.org/dist/maven/maven-2/2.2.1/binaries/apache-maven-2.2.1-bin.tar.gz ######################################################################## 100.0% /usr/local/Cellar/maven2/2.2.1: 10 files, 3.1M, built in 6 seconds
$ mvn --version Apache Maven 2.2.1 (r801777; 2009-08-06 12:16:01-0700) Java version: 1.6.0_37 Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home Default locale: en_US, platform encoding: MacRoman OS name: "mac os x" version: "10.7.4" arch: "x86_64" Family: "mac"
Edición: También puede simplemente hacer un brew switch maven 2.2.1
para cambiar a una versión diferente.
Edit: El proyecto Apache Maven reorganizó su repo. Se actualizó esta respuesta para tener en cuenta este cambio.
Actualización: 15/01/2015
- Encuentre el historial de compromiso del software y la versión deseados. por ejemplo, necesito cambiar de la versión 1.4.1 de la ventana acoplable a la 1.3.3: https://github.com/Homebrew/homebrew-core/commits/master/Formula/docker.rb
- Ver el archivo con este botón:
- Haga clic en el botón Raw:
- Copie la URL (docker.rb url en este ejemplo) de la barra de direcciones
-
brew install <url>
(es posible que tenga quebrew unlink
primero elbrew unlink
, por ejemplo,brew unlink docker
) -
brew switch docker 1.3.3
- Cambie de nuevo a la ventana
brew switch docker 1.4.1
De esta gist
brew update
brew versions FORMULA
cd `brew --prefix`
git checkout HASH Library/Formula/FORMULA.rb # use output of "brew versions"
brew install FORMULA
brew switch FORMULA VERSION
git checkout -- Library/Formula/FORMULA.rb # reset formula
## Example: Using Subversion 1.6.17
#
# $ brew versions subversion
# 1.7.3 git checkout f8bf2f3 /usr/local/Library/Formula/subversion.rb
# 1.7.2 git checkout d89bf83 /usr/local/Library/Formula/subversion.rb
# 1.6.17 git checkout 6e2d550 /usr/local/Library/Formula/subversion.rb
# 1.6.16 git checkout 83ed494 /usr/local/Library/Formula/subversion.rb
# 1.6.15 git checkout 809a18a /usr/local/Library/Formula/subversion.rb
# 1.6.13 git checkout 7871a99 /usr/local/Library/Formula/subversion.rb
# 1.6.12 git checkout c99b3ac /usr/local/Library/Formula/subversion.rb
# 1.6.6 git checkout 8774131 /usr/local/Library/Formula/subversion.rb
# 1.6.5 git checkout a82e823 /usr/local/Library/Formula/subversion.rb
# 1.6.3 git checkout 6b6d369 /usr/local/Library/Formula/subversion.rb
# $ cd `brew --prefix`
# $ git checkout 6e2d550 /usr/local/Library/Formula/subversion.rb
# $ brew install subversion
# $ brew switch subversion 1.6.17
# $ git checkout -- Library/Formula/subversion.rb
Ahora hay una forma mucho más fácil de instalar una versión anterior de una fórmula que había instalado anteriormente. Simplemente usar
brew switch [formula] [version]
Por ejemplo, alterno regularmente entre Node.js 0.4.12 y 0.6.5:
brew switch node 0.4.12
brew switch node 0.6.5
Como el brew switch
solo cambia los enlaces simbólicos, es muy rápido. Consulte la documentación adicional en Homebrew Wiki en Comandos externos .
Basado en el flujo de trabajo descrito por @tschundeee y la actualización 1 de @Debilski , automaticé el procedimiento y agregué la limpieza en este script .
Descárguelo , póngalo en su ruta y brewv <formula_name> <wanted_version>
. Para el OP específico, sería:
cd path/to/downloaded/script/
./brewv postgresql 8.4.4
:)
El problema con homebrew/versions
es que alguien tiene que tener esa versión específica del software en el repositorio para que puedas usarlo. Además, dado que las brew versions
ya no son compatibles, se requiere otra solución. Para las soluciones que indican el uso de brew switch
, esto solo funcionará si no ha realizado una brew cleanup
ya que la versión debe existir en su computadora.
Tuve un problema con el deseo de instalar una versión anterior específica de docker-machine
que no estaba en la lista de homebrew/versions
. Resolví esto usando lo siguiente, que también debería funcionar para cualquier software instalado. El ejemplo a continuación utilizará docker-machine
como el paquete que deseo cambiar de versión 0.5.0 a 0.4.1.
Ve a tu directorio de
Formula
caseras.
Puede determinar esto ejecutandobrew info [any package name]
. Por ejemplo,brew info docker-machine
me da una línea que me muestra un camino -/usr/local/Cellar/docker-machine/0.5.0
. Esto me dice que en mi máquina, homebrew está instalado en/usr/local
y mi directorio deFormula
se encuentra por defecto en/usr/local/Library/Formula
Localice el archivo de fórmula específica (.rb) para su paquete. Como quiero bajar la
docker-machine
, puedo ver un archivodocker-machine.rb
.Obtenga el historial de versiones de este archivo de fórmula . Introduzca
git log docker-machine.rb
. Esto mostrará una lista del historial de confirmación completo para este archivo. Verás una salida como esta:
...more commit 20c7abc13d2edd67c8c1d30c407bd5e31229cacc Author: BrewTestBot Date: Thu Nov 5 16:14:18 2015 +0000 docker-machine: update 0.5.0 bottle. commit 8f615708184884e501bf5c16482c95eff6aea637 Author: Vincent Lesierse Date: Tue Oct 27 22:25:30 2015 +0100 docker-machine 0.5.0 Updated docker-machine to 0.5.0 Closes #45403. Signed-off-by: Dominyk Tiller commit 5970e1af9b13dcbeffd281ae57c9ab90316ba423 Author: BrewTestBot Date: Mon Sep 21 14:04:04 2015 +0100 docker-machine: update 0.4.1 bottle. commit 18fcbd36d22fa0c19406d699308fafb44e4c8dcd Author: BrewTestBot Date: Sun Aug 16 09:05:56 2015 +0100 docker-machine: update 0.4.1 bottle. ...more
La parte difícil es encontrar la última confirmación para la versión específica que deseas. En lo anterior, puedo decir que la última versión 0.4.1 se commit 5970e1af9b13dcbeffd281ae57c9ab90316ba423
con esta etiqueta de commit 5970e1af9b13dcbeffd281ae57c9ab90316ba423
: commit 5970e1af9b13dcbeffd281ae57c9ab90316ba423
. Las confirmaciones sobre este punto comienzan a usar la versión 0.5.0 (las entradas del registro de git se listan desde la fecha más reciente hasta la más antigua).
Obtenga una versión anterior del archivo de fórmula. Usando la etiqueta de confirmación del paso # 3 (puede usar los primeros 6 caracteres), puede obtener una versión anterior del archivo de fórmula usando lo siguiente:
git checkout 5970e1 docker-machine.rb
Desinstale la versión actual de su paquete. Simplemente ejecute los comandos normales de brew para desinstalar la versión actual de su paquete.
Ex.brew uninstall docker-machine
Instale la versión anterior del paquete. Ahora, solo puede ejecutar el comando normal brew install y se instalará la fórmula que se haya prestado. Ex.
brew install docker-machine
Es posible que deba volver a enlazar utilizando la brew link docker-machine
si es necesario.
Si en algún momento desea volver a la última versión de un paquete específico, vaya al directorio de Fórmula y emita los siguientes comandos en su archivo de fórmula (.rb)
git reset HEAD docker-machine.rb
git checkout -- docker-machine.rb
Luego, puede brew uninstall docker-machine
e brew install docker-machine
para obtener la última versión y seguir así.
En la línea de la sugerencia de @ halfcube, esto funciona muy bien:
- Encuentre la biblioteca que está buscando en https://github.com/Homebrew/homebrew-core/tree/master/Formula
- Haga clic en: https://github.com/Homebrew/homebrew-core/blob/master/Formula/postgresql.rb
- Haga clic en el botón "historial" para ver las confirmaciones antiguas: https://github.com/Homebrew/homebrew-core/commits/master/Formula/postgresql.rb
- Haga clic en el que desee: "postgresql: actualice la versión a 8.4.4", https://github.com/Homebrew/homebrew-core/blob/fa992c6a82eebdc4cc36a0c0d2837f4c02f3f422/Library/Formula/postgresql.rb
- Haga clic en el enlace "sin formato": https://raw.githubusercontent.com/Homebrew/homebrew-core/fa992c6a82eebdc4cc36a0c0d2837f4c02f3f422/Library/Formula/postgresql.rb
-
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/fa992c6a82eebdc4cc36a0c0d2837f4c02f3f422/Library/Formula/postgresql.rb
En la versión más reciente de homebrew (0.9.5 a partir de este escrito) habrá una receta específica para la versión del barril de homebrew que desea instalar. Ejemplo:
$ brew search mongodb
mongodb mongodb24 mongodb26
Entonces simplemente haz el brew install mongodb26
como normal.
En el caso de que ya haya instalado la última versión, asegúrese de desvincular la última versión y vincular la versión deseada: brew unlink mongodb && brew link mongodb26
.
He descubierto una solución alternativa mejor que las otras soluciones complejas.
brew install https://raw.github.com/Homebrew/homebrew-versions/master/postgresql8.rb
Esto descargará e instalará PostgreSQL 8.4.8.
Encontré esta solución al comenzar a seguir los pasos de búsqueda del repositorio y un comment en el repositorio.
Después de una pequeña investigación, se encontró que alguien tiene una colección de formularios raros para elaborar.
Si buscas MySQL 5.1.x, prueba esto.
brew install https://raw.github.com/Homebrew/homebrew-versions/master/mysql51.rb
Puede utilizar la estrategia de identificación de la fórmula y un compromiso en particular en el historial de la fórmula que coincida con la versión del paquete que desea instalar.
Presiona
t
en tu teclado para activar el buscador de archivos.Identifique una fórmula que parezca más relevante, tal vez:
Formula/mysql.rb
, que lo lleva a una ubicación de archivo forumla: https://github.com/Homebrew/homebrew-core/blob/master/Formula/mysql.rb .Mire el historial de revisiones haciendo clic en el botón
History
, que se encuentra en https://github.com/Homebrew/homebrew-core/commits/master/Formula/mysql.rb . Si está interesado en MySQL 5.7.10, es posible que desee hacer clic en la última revisión anterior a 5.7.11, que navega hacia un compromiso de GitHub:
NOTA: Es posible que tenga que ver el historial de confirmación en su consola según la sugerencia de GitHub si el historial de confirmación no se carga en su navegador. Reemplace el SHA de confirmación anterior en la URL si está interesado en ver ese compromiso en GitHub. Alternativamente, salta al paso 7, a continuación.
Haga clic en el botón "Ver" para ver la fuente del archivo mysql.rb después de que se aplicó la confirmación.
Luego haga clic en el botón "Sin procesar" para ver la fuente en bruto.
Copia la URL. Alternativamente,
mysql.rb
la URL usted mismo con el nombre del archivomysql.rb
para identificar su fórmula y la versión particular de esa fórmula (identificada por el comando SHA en la URL a continuación).Instálelo con
$ brew install [URL from step 7]
$ brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/c77882756a832ac1d87e7396c114158e5619016c/Formula/mysql.rb
NOTA: Esta respuesta se actualizó para tener en cuenta la eliminación del sitio web braumeister.org. El mismo principio se aplica, braumeister simplemente proporcionó una forma fácil para principiantes de navegar por las versiones de fórmulas.
Se podría hacer muy fácil para la última versión de cerveza.
brew tap homebrew/versions
brew install subversion17 # for svn 1.7 branch instead of last available
brew install postgresql8 # for postgresql 8 (which you ask)
Si no puede encontrar su versión con brew search <formula>
, también puede intentar revisar los registros de confirmación de su fórmula para encontrar la versión que desea:
Aquí hay un ejemplo para instalar una versión anterior de nginx a través de brew:
ver
nginx: update 1.6.3 bottle eba75b9a1a474b9fc4df30bd0a32637fa31ec049
Desde allí, podemos instalar 1.6.3
con la URL sha y raw git:
brew install https://raw.githubusercontent.com/Homebrew/homebrew/eba75b9a1a474b9fc4df30bd0a32637fa31ec049/Library/Formula/nginx.rb
Una respuesta actualizada ya que se agrega a lo que @ lance-pollard ya ha publicado como respuesta de trabajo.
Cómo instalar una versión específica de una fórmula (la fórmula utilizada en este ejemplo es terraform
):
- Encuentre su archivo de fórmula, por ejemplo: https://github.com/Homebrew/homebrew-core/blob/master/Formula/terraform.rb
- Obtenga la versión de confirmación del historial de github con https://github.com/Homebrew/homebrew-core/commits/master/Formula/terraform.rb o
git log master -- Formula/terraform.rb
si ha clonado el repositorio localmente. - Obtenga la URL de git sin formato con la versión de confirmación de su fórmula: Si el enlace de la fórmula en github.com es https://github.com/Homebrew/homebrew-core/blob/e4ca4d2c41d4c1412994f9f1cb14993be5b2c59a/Formula/terraform.rb , su URL completa be: https://raw.githubusercontent.com/Homebrew/homebrew-core/e4ca4d2c41d4c1412994f9f1cb14993be5b2c59a/Formula/terraform.rb
- Instálelo con:
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/e4ca4d2c41d4c1412994f9f1cb14993be5b2c59a/Formula/terraform.rb
Actualización en la biblioteca / Fórmula / postgresql.rb línea 8 a
http://ftp2.uk.postgresql.org/sites/ftp.postgresql.org/source/v8.4.6/postgresql-8.4.6.tar.bz2
Y MD5 en la línea 9 a
fcc3daaf2292fa6bf1185ec45e512db6
Guardar y Salir.
brew install postgres
initdb /usr/local/var/postgres
Ahora, en esta etapa, podría enfrentar el postgresql could not create shared memory segment
error, para evitar esa actualización /etc/sysctl.conf
como esta:
kern.sysv.shmall=65536
kern.sysv.shmmax=16777216
Inténtalo de initdb /usr/local/var/postgres
nuevo, y debería funcionar sin problemas.
Para ejecutar postgresql en el inicio
launchctl load -w /usr/local/Cellar/postgresql/8.4.6/org.postgresql.postgres.plist
Espero que ayude :)
Ninguno de estos realmente funcionó para mi caso (Python), así que agregaré mis 2 centavos:
cd `brew --prefix`
git log Library/Formula/python.rb
La salida se ve así:
commit 9ff2d8ca791ed1bd149fb8be063db0ed6a67a6de Author: Dominyk Tiller <[email protected]> Date: Thu Jun 30 17:42:18 2016 +0100 python: clarify pour_bottle reason commit cb3b29b824a264895434214e191d0d7ef4d51c85 Author: BrewTestBot <[email protected]> Date: Wed Jun 29 14:18:40 2016 +0100 python: update 2.7.12 bottle. commit 45bb1e220341894bbb7de6fd3f6df20987dc14f0 Author: Rakesh <[email protected]> Date: Wed Jun 29 10:02:26 2016 +0530 python 2.7.12 Closes #2452. Signed-off-by: Tim D. Smith <[email protected]> commit cf5da0547cd261f79d69e7ff62fdfbd2c2d646e9 Author: BrewTestBot <[email protected]> Date: Fri Jun 17 20:14:36 2016 +0100 python: update 2.7.11 bottle. ...
Quiero versión 2.7.11
por lo que mi hash es cf5da0547cd261f79d69e7ff62fdfbd2c2d646e9
(o cf5da05
para abreviar). A continuación, reviso esa versión e instalo la fórmula python
:
git checkout cf5da05
brew install python
Finalmente, limpiar:
git checkout master
Acabo de copiar una versión anterior de elasticsearch en el /usr/local/Cellar/elasticsearch
directorio.
$ mkdir /usr/local/Cellar/elasticsearch/5.4.3/bin
$ cp elasticsearch /usr/local/Cellar/elasticsearch/5.4.3/bin
$ brew switch elasticsearch 5.4.3
Eso es. Tal vez sea útil para cualquiera.
Decidí, en contra de mi buen juicio, crear una fórmula para Maven 3.1.1, que homebrew/versions
no tenía. Para hacer esto:
- Me
homebrew/versions
bifurqué en github. - He enlazado
$(brew --prefix)/Library/Taps
a la copia de trabajo local de mi bifurcación. Voy a llamar a estomy-homebrew/versions
. - Lo probé especificando la fórmula como
my-homebrew/versions/<formula>
. - Envié una solicitud de extracción
homebrew/versions
para mi nueva fórmula.
Hurra.
Para versiones que no están actualmente en las fórmulas de preparación predeterminadas, puede crear fácilmente su propio toque con la herramienta desde https://github.com/buildtools-version-taps/homebrew-versions-tap-tool