BrewfileでHomebrewパッケージを管理する
この記事は1分で実現できる有用な技術 Advent Calendar 2013の24日目の記事です.
Brewfileを使えば,Bundlerでrubygemsを管理するようにHomebrewのパッケージを管理できる.Brewfileのあるディレクトリで
$ brew bundle
とすれば,Brewfileに書かれたパッケージがすべてインストールされる.これはHomebrew公式のコマンドであり,特別なインストール等は必要なく,最新版にアップデートすればすぐに使うことができる.
これを使えば,dotfilesに加えて自分のbrewパッケージを管理しておくこともできるし(tcnksm/dotfiles/Brewfile),imagemagickのようにプロジェクトで必要になるパッケージをBrewfileとして共有しておくこともできる.自分は,Boxenをやめてこちらに切り替えた.
Brewfileの基本の文法は,以下のようにinstall ...
とインストールしたいパッケージを記述するだけ.brew update
やbrew clean
といったコマンドも記述できる.
# Homebrewを最新版にアップデート
update
# Formulaを更新
upgrade
# パッケージのインストール
install zsh
install git
install install coreutils
# 不要なファイルを削除
clean
とするだけ.Brewfileに書かれたHomebrewパッケージがインストールされる.
公式以外のレポジトリを追加してインストールすることも可能.以下のように記述する.
tap homebrew/binary
install packer
(追記) 以前は,同じレポジトリに対してbrew tapを実行すると,Errorとなり実行が停止してしまったため,原始的記述が必要だったが,@sonotsさんのpullreqでWarningに変更となった(https://github.com/Homebrew/homebrew/pull/25617).ありがとうございます.
また,レポジトリに存在しないAppをダウンロードする際は,自分でFormulaを書いたレポジトリを準備して,それをtapすればよい.詳しくは,こちら.
Google ChromeやVagrantといったdmgでの配布Appも,homebrew-caskを使えば,Brewでインストールできるようになるが,それもBrewfileに記述することができる.
# homebrew-caskのインストール
tap phinze/homebrew-cask
install brew-cask
# インストール
cask install google-chrome
cask install kobito
cask install virtualbox
cask install vagrant
参考