2014/07/31追記
しばらく使わない間に色々更新があったようです。
Brewfile がオワコン化していました。
$ brew bundle
Warning: brew bundle is unsupported and will be replaced with another,
incompatible version at some point.
Please feel free volunteer to support it in a tap.
カスタムタスクとして bundle を追加する方法はあるけども、ぶっちゃけ Brewfile の各行の先頭に brew つけたシェルスクリプトに置き換えればいいと思います。
(というか以前に brewfile の実装を読んだときは、各行の先頭に brew 付けて system で実行してるだけだったような)
tap なしでインストールできるようになっていました。
brew install caskroom/cask/brew-cask
これは多分 brew 側の機能追加によるものですかね。
結構ストックされていたので更新通知を送ってみました。どんな記事でも言えることではありますが、導入の際は公式ドキュメントを確認されることをオススメします。
↓↓↓以下は参考にならない部分もあるかと↓↓↓
homebrew-caskって?
macおなじみのdmgをマウントしてアプリアイコンをドラッグしてインストールするアレをbrew cask install dropboxとかってできるようにしちゃうもの。
caskは大樽のことらしい。dmgを大樽に見立ててるみたいですね。
Brewfileって?
homebrewのコマンドをずらずら書いておけるファイル。rubyのgemfileとかnodeのpackage.jsonなんかで依存パッケージを書いたことある人なら、あーあれねとなりそう。
ざっくりとした手順
- xcodeをインストール
- mavericksの場合はxcode-select —installとしてコマンドラインツールをインストール
- homebrewをインストール。ワンライナーでいける
- Brewfileを用意する
- Brewfileのおかれたディレクトリでbrew bundleをたたく
- Brewfileに書かれた通りアプリがインストールされる
Brewfileの例
update
upgrade
# homebrew-caskのインストール
tap caskroom/cask || true
install brew-cask
# 各種インストール
install rbenv ruby-build
cask install iterm2
cask install java
cask install google-chrome
cask install dropbox
cask install virtualbox
cask install vagrant
cask install kobito
tapでtrueとしてるのはこちらの記事を参照して下さい。
いい点・悪い点
いい点
- homebrewで入れるものってどのみち結構あるので、こいつでdmgもまとめられるのは魅力。
- 手軽。最初boxenを使ってみようかと思ってたけど、個人マシンの用途を考えると、これで十分だった。
- まだやってないけどここをみる限りマイナーなdmgを対応させるのも難しくなさそう。
悪い点
- mac app storeのやつは入れられないみたい。こればっかりはapp storeの購入済み開いてぽちぽち、かなぁ。
参考
BrewfileでHomebrewパッケージを管理する | SOTA
homebrew-caskが良さそうなので導入してみた - About Digital
2014/05/07 追記
homebrew-cask のリポジトリが変更になりました。Brewfile の更新と、リポジトリの変更が必要となります。上記の Brewfile は更新済みです。
リポジトリの変更については、ほとんどの人は下記のコマンドで問題ないハズです。私の環境では、下記を実行したら legacy tap の消去が行われ、正常にマイグレートされました。
brew update && brew upgrade brew-cask
何か問題が起きたら、下記ドキュメントの If Something Goes Wrong の章を見て、もろもろ試してみて下さい。
https://github.com/caskroom/homebrew-cask/blob/master/doc/TAP_MIGRATION.md