Homebrewでバージョンを指定してパッケージをインストールする

はじめに


某モバイルアプリでですね、要求しているビルド用のパッケージが
今、インストールされているものよりも古いバージョンでした。

そのままだと、ビルド出来ないのでバージョンを古くしようとしたのがキッカケです。。。

# 某モバイルアプリはAndroidで、ビルドパッケージはGradleなんですけどw

インストール(される|した)バージョンを確認


バージョンを確認します。

1
$brew info gradle

するとこんな感じで結果が出ます

1
2
3
4
5
gradle: stable 1.10
http://www.gradle.org/
/usr/local/Cellar/gradle/1.10 (143 files, 42M) *
  Built from source
From: https://github.com/Homebrew/homebrew/commits/master/Library/Formula/gradle.rb

インストール可能なバージョンを調べる


古いバージョンと言いつつも、バージョンがあるかどうかも調べないといけません。
という訳で、バージョンを調べます。

1
$brew versions gradle

すると、こんな感じでズラズラとバージョンと対応するgitのハッシュ値が出てきます。

1
2
3
4
5
6
  https://github.com/Homebrew/homebrew-versions
1.10     git checkout 2b10422 Library/Formula/gradle.rb
1.9      git checkout 5bab5e9 Library/Formula/gradle.rb
1.8      git checkout 9214e60 Library/Formula/gradle.rb
1.7      git checkout f826cc9 Library/Formula/gradle.rb
...

これで、一つ前のバージョンがあることが分かりますね。
このタイミングでパッケージは削除しましょう。

1
$brew remove gradle

古いバージョンをインストールするよ


ハッシュ値がわかったので、そのFormulaだけ前のバージョンに戻せばいいわけです。
戻した後にインストールすれば、古いバージョンのパッケージがインストールできるという・・・

1
2
$ cd /usr/local/Library/Formula
$ git checkout 5bab5e9 gradle.rb

バージョンを確認してからのインストール

1
2
3
4
5
6
7
$brew info gradle
gradle: stable 1.9, devel 1.10-rc-1
http://www.gradle.org/
Not installed
From: https://github.com/Homebrew/homebrew/commits/master/Library/Formula/gradle.rb

$brew install gradle

と、簡単にできましたとさ