Mac OS X の環境を整えるには、便利なツールやアプリ(ソフトウェア)のインストールを行います。パッケージ管理システムを知らなければ、Webでツールを検索してダウンロードページから一つずつ落とし、インストールしなくてはなりません。この作業には手間がかかり時間も奪われます。
パッケージ管理システムを使えば、この単調な繰り返し作業を軽減し、短時間で済ませることができます。今回はそのパッケージ管理システムの「Homebrew」の使い方を紹介します。
Windowsのパッケージ管理システムについてはこちらの記事を参考にしてください。
目次
必要となる知識
まず、はじめに知識として以下のことを学習しておくとよいでしょう。
- UNIXコマンド
- Vim
プログラミング学習サイトの「ドットインストール」で学習することができます。
Homebrewとは何か?
ターミナル.appでコマンドを入力して使う、UNIXツールを楽にインストール、アンインストールしたりできる日本で人気の高いパッケージ管理システムです。またアプリなどの、GUIアプリケーションもHomebrewの拡張「Homebrew Cask」を入れることで管理できます。
Homebrewのインストール
Homebrewを使うには、事前準備が必要です。
Homebrewの動作環境
- Intel CPU
- Mac OS X 10.6 以上(推奨10.7以上)
- Command Line Tools for Xcode
- Homebrewインストール用のシェル(bashやzshなど)
動作環境を確認、準備したらHomebrew本体をインストールします。
プロセッサとバージョンの確認
メニューバーの「Apple」メニューから「この Mac について」を選択すると確認できます。以下のAppleのサポートページを参考にしてみてください。
- 使用している Mac のプロセッサが Intel か PowerPC かの判定方法
Command Line Tools のインストールする
App StoreでXcodeをダウンロードして、インストールが完了したらターミナルを起動して、以下のコマンドを入力して「Enter」を押してください。
ターミナルは、「Finder」→「アプリケーション」→「ユーティリティ」→「ターミナル」にあります。
$ xcode-select --install
うまくいかない場合は Apple Developer からダウンロードしてインストールします。その際、ログインが必要になるのでApple IDを用意してください。Command Line Tools のインストール手順は以下のサイトを参考にしてみてください。
シェルの確認
デフォルトではbashが入ってると思いますが、下記のコマンドをターミナルで実行し、確認してみてください。
$ echo $SHELL
シェルがbashの場合以下のような文字が表示されると思います。
/bin/bash
fish, tcsh, csh が設定されていたらHomebrewが動かないようなので変更しましょう。以下の Apple サポートページを参考にしてみてください。
Homebrew本体のインストール
動作環境の確認とインストールに必要な環境が整ったらHomebrew本体をインストールしていきましょう。
ターミナルで以下のコマンドを実行してください。念のためコードが変わっている可能性もあるので、公式サイトでコマンドを確認してみてください。
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
インストールが完了したら、その旨をメッセージで教えてくれますが、いちよ確認してみましょう。インストールできたらbrew
コマンドが使えるようになります。これに--version
または-v
をつけて実行するとHomebrewのバージョンが確認できます。
$ brew --version 0.9.5
もしくは
$ brew -v Homebrew 0.9.5
brew -v
はより詳しいバージョン情報が表示されます。
不具合がないか調べる
Homebrewがインストールできたら、まずはじめに不具合がないか確かめます。以下のコマンドでチェックします。
$ brew doctor
下記のようなメッセージが出力されたら使う準備はOKです。
Your system is ready to brew.
エラーメッセージが出力された場合は、それにしたがって対処してください。エラーメッセージの内容で検索すれば解決方法に辿り着くでしょう。
他のパッケージ管理システムのMacPortなどを入れていたりすると、Warningがでると思います。混在させておくと良くないようなのでアンインストールしておきましょう。
Homebrewの基本的な使い方
Homebrewでパッケージのインストールはターミナルで行いますが、CUIが苦手な方はGUIツールのCakebrewがあるので以下のサイトからダウンロードして使ってみてください。
まずは、基本的には以下の5つを覚えておけば使えます。
- インストール
- アインストール
- アップデートとアップグレード
- パッケージを探し方
- ヘルプを見る
実際に使ってみてから、パッケージの情報の確認やインストールしたパッケージの確認、パッケージを自作する方法など覚えていけばいいでしょう。
パッケージのインストール方法
パッケージは以下のコマンドを実行することで簡単にインストールできます。
$ brew install [formula]
パッケージをインストールするために、そのビルド手順の書かれた「Formula」を使います。
公式サイトではwget
をインストールする例が載っています。
$ brew install wget
インストールコマンドを行うと/usr/local
の中のCellor
ディレクトにパッケージがインストールされ、bin
にシンボリックリンクが作られます。
$ cd /usr/local $ find Cellar Cellar/wget/1.15 Cellar/wget/1.15/bin/wget Cellar/wget/1.15/share/man/man1/wget.1 $ ls -l bin bin/wget -> ../Cellar/wget/1.15/bin/wget
まとめると以下のようになります。
/usr/local/Cellar/
にパッケージのインストール/usr/local/bin/
にパッケージのリンク
Homebrewは決められたディレクトリの中だけにファイルをインストールします。またインストール場所を自由に変えることもできます。
パッケージのアンインストール方法
パッケージのアンインストールは以下のコマンドでアンインストールできます。
$ brew uninstall [formula]
uninstall
にはエイリアスがあり、remove
、rm
としても同じようにアンインストールできます。uninstall
は単語が長いので、一番短いrm
を使うといいでしょう。
$ brew rm [formula]
アップデートとアップグレード
Homebrewを最新バージョンにするコマンドにはupdate
とupgrade
があります。
Homebrew本体を最新バージョンにし、Formulaに追加・変更があったら、それらをアップするコマンドがupdate
です。この時、インストールされたパッケージはアップデートされません。
$ brew update
インストール済みのパッケージを最新バージョンにするには、upgrade
コマンドを使います。
$ brew upgrade
このコマンドを実行するとインストール済みのパッケージすべてがアップグレードされます。特定のパッケージのみアップグレードするには、以下のようにFormulaを指定します。
$ brew upgrade [formula]
upgrade
は、Formulaが追加・変更が行われていたらですので、先にupdate
を行っておく必要があります。また、アップデート、アップグレードした時に古いバージョンが残るので、cleanup
コマンドもセットで覚えておくといいでしょう。
cleanup
すると古いバージョンをCellarから削除してくれます。インストールのところで出てきたCellarです。これもFormulaと同じようにHomebrew用語ですので覚えておくといいでしょう。
cleanup
もupgrade
と同じようにFormulaを指定でき、省略した場合はインストールしたもの全てが対象になります。
$ brew update && brew upgrade [formula] && brew cleanup [formula]
パッケージの探し方
インストール可能なパッケージは何があるかどうかは、Formulaがあるか検索することで調べることができます。検索するには、search
かエイリアスの-S
を使います。
$ brew search [text]
検索文字を入力しないとFormulaがすべて表示されます。また[text]
をスラッシュで囲むことで正規表現を使って検索することができます。
例えば以下のようにgit
を検索すると、一つ目はFormula名にgitを含むものが結果に表示されますが、スラッシュで囲んで正規表現の^
と$
を使うと完全一致したgitのみ結果に表示されます
$ brew -S git gitを含んだFormulaが表示される $ brew -S /^git$/ git
正規表現の構文は以下のサイトを参考にしてみてください。
Web上では「Homebrew Formulas」でFormulaを検索することができます。
Homebrew Formulas
分からないことはヘルプで確認
ここまでのことは、基本的によく使うだろうと思います。その他にもHomebrewにはコマンドやそれに使えるオプションがあります。
また、インストールしたパッケージについても知りたいことがあるでしょう。それを調べるには、以下の3つのコマンドを覚えておくと良いです。
man brew
brew help
brew home [formula]
$ man brew
man brew
コマンドを実行するとHomebreのbrew
コマンドで使えるマニュアルが表示されます。分からないことがあったら確認してみましょう。開いたマニュアルはq
を押すと閉じる事ができます。
$ brew help Example usage: brew [info | home | options ] [FORMULA...] brew install FORMULA... brew uninstall FORMULA... brew search [foo] brew list [FORMULA...] brew update brew upgrade [FORMULA...] brew pin/unpin [FORMULA...] Troubleshooting: brew doctor brew install -vd FORMULA brew [--env | config] Brewing: brew create [URL [--no-fetch]] brew edit [FORMULA...] open https://github.com/Homebrew/homebrew/wiki/Formula-Cookbook Further help: man brew brew home
brew help
コマンドは、スッキリまとめてコマンドだけを表示してくれます。コマンドをど忘れした時のチートシート代わりに使うといいかもしれません。
$ brew home [formula]
brew home [formula]
コマンドは指定したFormulaのWebサイトを開くことができます。インストールしたパッケージについて知りたいことがあればこのコマンドを実行してみてください。
Formulaを指定しなかった場合は、Homebrewの公式サイトが開きます。コマンド以外に詳しく知りたいことがあれば、そちらのWikiを参照してみてください。
HomebrewのWikiはこちらのリンクからもどうぞ
Homebrew をもうちょっと使いこなそう
基本的な使い方を覚えたら次に以下の3つも覚えておくと良いでしょう。
- インストールしたパッケージの確認
- Formulaの情報をみる
- Formulaの増やし方とダウングレードの方法
インストールしたパッケージの確認方法
何をインストールしたか忘れてしまったときなど、インストールしたパッケージを表示するには、list
コマンドを使います。
$ brew list [formula]
Formulaを指定した場合はインストールされているディレクトリのPathが表示されます。指定しなかった場合はインストール済みのFormula名がリストで表示されます。
Formulaの情報をみる
info
コマンドを使えば、Formulaの情報が見ることができます。これを使うとそれぞれのFormulaに用意されたオプションやサイトURLなどの情報を見ることができます。
また、パッケージのインストールが行われていないものには「Not installed」と表示されるのでここでもインストールの確認ができます。
$ brew info [formula]
Formulaの増やし方とダウングレードの方法
Formulaを検索してみても欲しいパッケージが見つからないかもしれません。また、Formulaは最新バージョンに更新されていきます。何か不具合があったときに古いバージョンにダウングレードしたいケースもあるでしょう。
そんな時は、Formulaを追加してみましょう。Formulaを増やすには主に2つの方法があります。
- Formulaを自作する
- 公式以外にGitHubで公開されているものを取り込む
今回は2つ目の公式以外にGitHubで公開されているものをHomebrewに取り込む方法を行ってみましょう。使い方がわかってきたらFormulaを自作するのもいいでしょう。
tap を使ってリポジトリを追加する
Homebrewに他のFormulaのリポジトリを取り込むにはtap
コマンドを使います。取り込んだリポジトリは、untap
コマンド削除することができます。
tap
untap
$ brew tap [user]/[repo]
tap
のあとに、GitHubに公開されているFomulaのユーザ名とリポジトリ名を入れて、brew
コマンドで使えるようにします。
例として、Homebrewの本体とは別バージョンのFormulaが公開されているHomebrew/homebrew-versions
を追加してみましょう。これを追加することでダウングレードが可能になります。
tap
するとき、接頭辞のhomebrew-
は省略します。
$ brew tap homebrew/versions
tap
したリポジトリは、tap
コマンドを引数なしで実行すると確認できます。
$ brew tap homebrew/versions
これでFormulaが追加されました。試しにFormulaのnode
を検索してみます。
$ brew -S node leafnode node node04 node06 node08 nodebrew nodenv
するとNode.jsの別バージョンnode04
、node06
、node08
などが追加されていることがわかります。
untap でリポジトリの削除
追加したリポジトリの削除は、untap
を実行すれば行えます。
$ brew untap [user]/[repo]
詳しくはman brew
でマニュアルを見るか、HomebrewのWikiを確認してみてください。
ダウングレードする方法
Homebrewで別バージョンをインストールするには上述の例で示した方法以外にも、自分でFormulaを作ったりして対応することもできます。
以下のstakoverflowのAnswerも参考にしてみてください。
Homebrew をアンインストール
他のパッケージ管理システムに乗り換える際など、Homebrew本体をアンインストールしたいなら以下の手順を実行し削除してください。
Homebrewのアンインストール方法はWikiのFAQに書かれています。
こちらのリンク先のシェルスクリプトを実行するとアンインストールできるようです。
入れたツールを優先して使う$PATHの設定
Homebrewは、デフォルトで/usr/local/bin
をで使用します。ここには、パスが通っているので特に設定を変更する必要はありません。
しかし、Mac OS X にプリインストールされているツール、例えば Ruby、Git、zshなどをHomebrewで入れ直す場合は、/usr/local/bin
を優先されるようにしなければなりません。この設定を行わないと使うことができません。
デフォルトで入っているツールを入れ直したとき、警告やエラーで知らしてくれるので、それに従って設定すればいいでしょう。ですが、エラーが出るのも気分が悪いので予め設定しておきます。
$PATH の設定手順
$PATH
を設定する方法には/etc/paths
を編集する方法やシェルのユーザ環境設定ファイル、例えば.bash_profile
ファイルや.bashrc
ファイルに記述する方法などがあります。
今回はターミナルのデフォルトのシェル、bash
の.bash_profile
に設定していきます。
HOMEディレクトリの.bash_profile
に以下の記述をします。ファイルがない場合は新規作成してください。
export PATH=/usr/local/bin:$PATH
それでは、以下の3ステップでパスの設定を行います。
- ドットで始まる非表示ファイルの確認
.bash_profile
に設定を書く$PATH
の設定を確認
ドットで始まる非表示ファイルの確認
ドットで始まるファイルはデフォルトでは非表示なのでFinderでは確認できません。なので、ターミナルで、ls
コマンドに-a
オプションをつけて実行して確認します。
.bash_profile
ファイルを確認するためには、HOMEディレクトリで確認しなければならないので以下のコマンドで確認してみましょう。
$ cd ~/ && ls -a
.bash_profileに設定を書く
上記の設定をターミナルから.bash_profile
に書き込むには以下のコマンドを実行してください。
パスの部分はシングルクォートで囲んでいるのに注意してください。これは上記で示したままクォートを付けなかったりダブルクォートで囲むと$PATH
の部分が変数として扱われ、展開されて書き込まれます。
$ echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile
cat
コマンドで確認してみましょう。最後の行に設定が追加されていればOKです。
$ cat ~/.bash_profile export PATH=/usr/local/bin:$PATH
すでに.bash_profile
があり、最後に改行がなかった場合、最後の記述と同じラインに設定が保存されてしまってうまく行ってないかもしれません。その場合はvim
やemacs
などのテキストエディタで開いて修正してあげてください。
$ vim ~/.bash_profile
$PATHの設定を確認
設定を書き込んだら、ターミナルを再起動して設定を反映させます。または、ターミナルでsource ~/.bash_profile
とコマンドを打ち、スクリプトを実行させます。
$ source ~/.bash_profile
環境変数のPATHが反映されているか、echo $PATH
コマンドで確認してみてください。設定されていれば/usr/local/bin:
から始まるパスが表示されます。
$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
設定された環境変数を表示するenv
コマンドでも確認できます。環境変数の中からPATH
を探して確認してみてください。
$ env
パスの設定以下のサイトも参考にしてみてください。
- Homebrewを快適に使うために設定してる4つのこと | Macとかの雑記帳
- Homebrew で作るモダンなフロントエンド開発環境 (Git + zsh + apache + MySQL + Ruby) | Developers.IO
Homebrew のコマンド一覧
よく使うであろうコマンド一覧です。
コマンド | 説明 |
---|---|
brew install [formula] | 指定したパッケージのインストール |
brew uninstall [formula] | 指定したパッケージのアンインストール |
brew doctor | Homebrewの問題をチェックします。 |
brew update | Homebrew本体をアップグレードします。 |
brew upgrade | 最新でないパッケージをまとめてアップグレードします。 |
brew upgrade [formula] | 指定した最新でないパッケージをアップグレードします。 |
brew cleanup | パッケージの古いバージョンをまとめて削除します。 |
brew cleanup [formula] | 指定したパッケージの古いバージョンを削除します。 |
brew -v | Homebrewのバージョンを表示します。 |
brew search | インストール可能なパッケージをすべて表示します。 |
brew search [text] | インストール可能なパッケージを検索します。 |
brew help | ヘルプを表示します。 |
man brew | Homebrewのマニュアルを開きます。 |
brew home | HomebrewのWebサイトを表示します。 |
brew home [formula] | パッケージのWebサイトを表示します。 |
brew list | インストールしたパッケージのリストを表示します。 |
brew list [formula] | インストールしたパッケージのファイルの場所を表示します。 |
brew info | インストールしたパッケージのサマリーを表示します。 |
brew info [formula] | 指定したパッケージの情報を表示します。 |
brew tap | 追加したGitHubのリポジトリを表示します。 |
brew tap [user]/[repo] | 指定したGitHubのリポジトリをHomebrewに追加します。 |
brew untap [user]/[repo] | 指定したリポジトリをHomebrewから削除します。 |
その他のコマンドは少し内容が古いですが以下のサイトにまとめられています。参考にしてみてください。新しいコマンドなど調べるときは、ターミナルでman brew
でマニュアルをみるのが確実です。
- MacPortsより使いやすい!?パッケージ管理システムHomebrewの使い方 | Macとかの雑記帳
- Homebrewの導入と使い方 | CAPH TECH
まとめ
Homebrewのインストール手順と使い方のまとめ
- 動作環境の確認
- Command Line Tools for Xcodeを入れる
- 必要であればJavaも入れる
- Homebrew本体を入れる
- エラーがないか確認
- PATHの設定
- パッケージのインストール、アンインストール
パッケージを入れたらそれを使えるようにするために、また設定が必要な場合があります。例えば、rbenv
などです。以下のページを参考にしてみてください。
あとがき
MacBook Air を買ったのでパッケージ管理に Homebrew を入れてみました。使い方を調べて自分なりに解釈しましたが、違っているところがあれば教えて下さい。
久しぶりの更新です。これからBlog更新がんばります。