2年くらい前までは、brewdleが行方不明になったり、そのせいでBrewfileはオワコン扱いされたりといろいろありましたが、 Homebrew CaskがHomebrewに取り込まれたことでセットアップ界はだいぶ落ち着いたと思われます(自分調べ)。
というわけでHomebrew関連のセットアップツールについて現在の状況をまとめました。
なお、AnsibleとかBoxenとかについては触れません。ご了承ください。
Homebrew Cask
Homebrew Caskは簡単に言うとその辺に転がっているパッケージをインストールできるツールです。
もともとは後述するbrewdleで有名になったと記憶しているんですが、便利すぎたので本家に吸収されちゃっています。
$ brew cask install alfred
$ brew cask install android-studio
$ brew cask install atom
$ brew cask install genymotion
$ brew cask install google-chrome
・
・
・
これだけでChromeとかAndroidStudioとかがインストールできます。
今では brew tap
もいらなくなりました(Homebrewはさすがに必要)。
デフォルトのダウンロード先は /Applications
になっているので、Alfredで検索する場合も気にしないで大丈夫です(ご指摘ありがとうございます!)。
なお、ダウンロード先を変えたい場合は、こんな感じで環境変数を設定するとインストール先を指定できます。
export HOMEBREW_CASK_OPTS="--appdir=/some/path/bar"
インストールが終わった後にbrew cask cleanup
を実行すると、使ったzipを削除してくれるので、容量が気になる人は一緒に実行するとよいです。
mascli
mascliはAppStore上のアプリをインストールできるツールです。
Homebrew Caskがカバーできない領域を埋める形で勢力を拡大していってます。
使い方ですが、たったこれだけでアプリがインストールされます。
$ brew install mas
$ mas install 803453959 # Slack
$ mas install 896624060 # Kobito
$ mas install 497799835 # Xcode
この並んでいる数字はAppStoreのURL中にある https://itunes.apple.com/us/app/slack/id803453959
みたいなID番号です。
インストール済みのMacで下記コマンドを叩くとIDが見れるので、別PCから持ってくる場合はあらかじめ調べておくといいでしょう。
$ mas list
944960179 AnyDo
405843582 Alfred
497799835 Xcode
・
・
・
なお、無料アプリをインストールする場合は、システム環境設定 -> App Store -> パスワードの設定
から、 無料ダウンロードの項目を「パスワードは不要」にしておかないとエラーになる のでご注意を。
homebrew-bundle
homebrew-bundleは、Rubyのbundlerのように、1ファイルでHomebrewのパッケージを管理したいという思想から始まった?ツールです。
もともとはbrewdlerという名前で、Rubyに依存していました。
いろいろあった結果、現在はRubyに依存せず、さらにHomebrew Caskもmascliも書けるようになりました。
使い方ですが、まずはBrewfileを作ります。
cask_args appdir: '/Applications'
brew 'vim', args: ['with-lua']
cask 'google-chrome'
mas '1Password', id: 443987910
で、この2行を実行すればOK。
$ brew tap Homebrew/bundle
$ brew bundle
ただ、ファイルに書かれたパッケージをインストールするだけなので、Homebrew Caskが本家に取り込まれてしまっている現状では、中途半端な存在になっています。
まとめ
2016年5月の時点では、Homebrew Caskとmascliを使っておけばなんとかなるという感じでしょうか(defaults使えばMacの設定も変更できます)。
brewdleがいろいろあった時に止めてしまった人も今なら大丈夫そうなので、是非セットアップシェルを作ってみてはいかがでしょうか。