簡単!これでわかるHomebrewのすべて

MacへのHomebrewのインストール方法の手順だけではなく、Formula, CaskやTapなどHomebrewを使いこなす上で必須となる知識を深められるように可能な限り詳細に説明を行っています。Homebrewはじめての人、使っているけど理解が不足している人はぜひこの機会に参考にしてください。
Homebrewのインストールを行うMacのバージョンは、macOS Catalinaバージョン10.15.6です。

目次
Homebrewについて
HomebrewはMac上で動作するパッケージマネージャーで、ソフトウェアのインストール、アンインストールをコマンドラインで行うことができ、インストール時にパッケージ間の依存関係を解決してくれる便利なツールです。
Homebrewを使わなかった場合
もしHomebrewを使わなかった場合のパッケージ(ソフトウェア)のインストールを確認しておきましょう。必ずしも下記の順番ではないかもしれませんが、インストールが完了するまでにさまざまなステッップを踏む必要があります。
- 検索エンジンでインストールしたいパッケージサイトを見つける
- パッケージのサイトでインストールの方法を確認する
- バッケージのダウンロードを行う
- 依存関係があればそのパッケージを先にインストールする
- パッケージのインストールを行う
その他にも本当にこのサイトが正しくて安全なのかやインストール方法が英語でわからないなどまだまだ大変なことはあるかもしれません。またアンインストールについては面倒だからとそのまま放置ということも多いのが実情ではないでしょうか。

Homebrewを使った場合
Homebrewを使わなかった場合に述べたことをまとめるとパッケージを管理するために必要な操作は以下の4つに集約されます。Homebewはそれらの操作をコマンドラインで簡単に行うことができます。
- パッケージの検索
- パッケージのインストール
- パッケージのアンインストール
- パッケージの更新
Homebrewのインストール
Homebrewのサイトでインストール方法の確認を行います。画面上に表示されているスクリプト(下記の赤線で囲まれた部分)を使って実行します。rubyコマンドを使って実行しますが、Macではrubyはインストールされているのでrubyのインストールは必要ありません。


コマンドラインで実行するため、ターミナルを起動して行います。Finderのメニューからユーティリティを選択して、ターミナルをダブルクリックすると起動することができます。


ターミナルが起動できたら、先ほど紹介したスクリプトをターミナルにコピー&ペーストしてHomebrewのインストールを開始してください。

インストールを実行すると途中でXcode Command Line Toolsのインストールの確認(インストール済でない場合)が表示されるので、そのまま”Enter”キーを押してください。
次にパスワードを聞かれるので、今Macにログインしているユーザのパスワードを入力してください
パスワードが間違っているとSorry, try again.と表示されます。再度正しいパスワードを入力してください。パスワードがあっているとそのままインストールが継続します。
Command Line Toolsのインストールが完了するとHomebrewのダウンロードとインストールが行われます。
インストールが成功(Installation successful!)し、メッセージに”Run brew help”が表示されるので実行します。
実行するとbrewのコマンドラインの使用方法が表示されます。これでHomebrewのインストールは完了です。
FORMULAとは
brew helpを実行したあとのメッセージにbrew info のあとに[FORMULA…]を指定しているのがわかるかと思います。
formulaは、ruby言語でパッケージの定義が記述されており、formulaの内容に沿ってパッケージのインストールが行われます。インストールする時などhomebrewを使用する際にはformulaを指定しますが、パッケージ名を指定していると考えても問題ないかと思います。
Homebrewコマンドの確認
バージョンの確認
Homebrewのバージョンを確認したい場合はbrew –versionコマンドを実行します。
パッケージのインストール
Homebrewのインストールが完了したらパッケージのインストールを行ってみましょう。ここではtreeコマンドのインストールを行います。
パッケージのインストールはbrew installコマンドを利用して行います。インストール後はtreeコマンドがどこにインストールされたかもwhichコマンドで確認しておきます。
treeコマンドは、実行したディレクトリ以下のディレクトリ・ファイル構成を表示してくれるコマンドです。ディレクトリ、ファイル構成を確認したい場所でtreeコマンドを実行してみてください。ここではPHPのフレームワークであるLaravelのインストールディレクトリで実行しています。
インストール済みのパッケージの確認
Homebrewを通して、インストールを行ったパッケージの確認はbrew listで行います。list実行時は、treeのパッケージのみインストールを行ったので、treeのみ表示されます。パッケージのインストールをすればここに表示されるパッケージ情報も増えることになります。
インストールができるパッケージの確認
Homebrewを使ってインストールできるパッケージはbrew searchで行うことができます。多数のパッケージがHomebrewを通してインストールできることが確認できます。
HomebrewでインストールできるパッケージはHomebrewのサイトにも記載されています。
brew searchのあとに名前を指定するとシステムへのインストールの状況も確認することができます。下記の例ではmysqlを指定します。システムにMySQLがインストール済みの場合は、名前の横にチェックが表示されます。
パッケージのアンインストール
パッケージのアンインストールはbrew unistallコマンドで行うことができます。アンインストール後は、brew listコマンドを実行してもtreeは表示されなくなります。
パッケージの情報を確認する
brew infoコマンドで個別パッケージの詳細情報を確認することができます。
バージョン情報やmacへのインストール情報だけではなく一定期間毎にインストールされた数や依存関係の情報(依存関係のあるパッケージがあれば)も表示されます。
パッケージのパスを確認する
インストールしたパッケージの実行のパスを確認するためには–prefixを利用します。
gitのパスは/usr/local/opt/gitであることがわかります。
バージョンの確認をする
Mac上にインストールしたHomebrewのバージョンを確認するためには、homebrew –versionコマンドを実行します。
問題がないかチェックを行う
Homebrewに問題がないかのチェックはhomebrew doctorで行います。

不必要になった古いバージョンを削除する
インストールしたパッケージの古いバージョンを削除する場合はhomebrew cleanupを実行します。インストール直後のHomebrewの環境では実行しても何も起こりません。
Homebrewやパッケージをアップデートする
brew updateコマンドでHomebrewのアップデートを行うことができます。更新がない場合は”Already up-to-date.”が表示されます。最新版という意味です。
brew upgradeではインストールしたパッケージのアップデートを行うことができます。何も更新がないと実行しても何も表示されません。
アップデートがないかの確認はbrew outdatedで行います。何もないと実行しても何も表示されません。
Homebrewのインストールから使用頻度の高いコマンドについて説明を行ってきましたが特別難しい箇所はありません。ぜひ本文書を参考にHomebrewを活用してパッケージ管理を行ってください。
サービスを自動機能するbrew services
Homebrewを使ったインストールしたデータベースMySQLはmysql.server startコマンドを使用することで起動を行うことができます。しかし、MACを再起動する度に上記コマンドを実行する必要があります。毎回再起動を行う毎に起動コマンドを実行する代わりにHomebrew Servicesを利用することで再起動時に自動起動させることができます。MySQLに限らずさまざまなパッケージがHomebrew Servicesを利用して起動管理を行うことができます。
brew servicesのインストール
homebrew serviceを使用するにはインストールが必要になりますが、下記のコマンドを実行すると自動でインストールが開始されます。

実行後、homebrew serviceで管理できるMySQLとredisがあることを確認できます。どちらも自動起動の設定は行っていないので、ステータスはstoppedとなっています。
サービスの自動起動設定
brew servicis startコマンドを利用して、MySQLの起動を行いステータスの確認を行うと以下のように表示されます。
サービスの自動起動停止
brew services stopコマンドを実行すると自動起動設定したサービスを停止することができます。
サービスの起動
自動起動ではなくサービスの起動のコマンドも準備されています。brew services runコマンドを実行すると起動します。(自動起動の設定ではありません。)
ChomeやFirefoxなどGUIのインストール
brew searchコマンドを実行した結果、非常にたくさんのパッケージをHomebrewを使ってインストールできることは確認できます。しかし、ChromeやFirefoxなどのGUIの情報は見つけることができません。Firefoxのインストールを通してGUIアプリケーションのインストール手順を確認していきましょう。
brew searchはformula名(パッケージの名前)を入力して実行すると指定したパッケージがインストールができるかどうか確認を行うことができます。firefoxを検索してみましょう。これまでには見かけることのなかったCasksという単語が確認できます。

Casksとは
Caskを利用することで、ChromeやFirefoxなどのmasOSのGUIアプリケーションをインストール、管理することができるようになります。CaskのおかげでHomebrewで管理下におけるアプリケーションの数を格段に増やすことができます。ChromeやFirefox以外のブラウザであるOpere, BraveなどもCaskを使ってインストールすることができます。
Firefoxのインストール(brew install)
先程brew searchでfirefoxの情報が検索できたので、これまで通りbrew installコマンドでfirefoxのインストールを行ってみます。(Casksを意図的に無視します)
brew installコマンドではErrorメッセージ(Error: No formulae found in taps.)にあるようにfirefoxを見つけることができず失敗に終わります。

Firefoxのインストール(brew cask install)
brew caskコマンドは廃止になり、実行するとエラーになります。brew install firefox –caskコマンドを実行してください。brew cask listコマンドもbrew list –caskコマンドになります。」
brew installではインストールが失敗しましたが、caskを利用することでインストールすることができます。caskを利用する場合は、installの前にcaskを挿入します。
caskを使用するためには事前になにか準備をする必要はありません。以下にあるようにbrew caskコマンドを利用するとcaskに関する情報がシステムにダウンロードされ、そこからパッケージのインストールが開始されます。caskに関する情報がダウンロードされるのはbrew caskを最初に実行した時のみです。
インストールメッセージの通り、Applicationsディレクトリの中にFirefoxがインストールされているはずです。
Homebrewでインストールを行ったため、FirefoxはHomebrewの管理下におかれます。brew listコマンドではなくbrew cask listでインストールされたFirefoxを確認することができます。
caskでインストールしたパッケージの削除
caskを使ってインストールしたパッケージはbrew cask uninstall パッケージ名で削除を行います。
Tapsとは
brew cask installを実行した際にTappingやTapsという単語がありましたが、Homebrewを使う上で知っておかなければならないものの一つです。
Tapsは、Homebrewではrepositories(リポジトリ:日本語では貯蔵庫)のことを表しており、Tapそれぞれが管理する複数のFormula(パッケージ群)を持っています。例えば上記にあるようにbrew cask installを実行したことでhomebrew/caskというTapがHomebrewに追加されました。
この追加したTapの中には、複数のFormulaが入っており、/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask/Casksの下にFormulaのファイルが保存されています。
Tapの確認(brew tap)
Homebrewで管理しているTapはbrew tapで確認することができます。
homebrew/coreはHomebrewをインストールした際に一緒に設定されているデフォルトTapです。homebrew/caskはbrew cask install実行時に追加されたTapです。
Tapを追加
Tapをさらに追加することも削除することも可能です。追加することでさらにたくさんのパッケージをHomebrewでインストール、管理できるようになります。Braveというブラウザのインストールを例にTapの追加を説明していきます。
例えばbraveというブラウザをインストールしたい場合にbrew search braveを実行します。
serachの結果braveに関するパッケージは3つ表示されました。Casksの下のbrave-browserのインストールは先程のFireFoxと同様にbrew cask install brave-browserで行うことができます。brave-browserの下に表示されている2つのパッケージについてインストール方法を確認していきます。
brave-broser-betaとbrave-browser-devは、homebrew/cask-versionsのTap下にあるため、名前だけ入力してインストールしても失敗します。
先にhomebrew/cask-versionsのTapの追加を行います。brew tapコマンドを利用して、Tapの追加と確認を行っています。
Tapの追加が完了したら、brew tapコマンドにhomebrew/cask-versionsが追加されていることが確認できます。
再度brave-browser-betaのインストールを実行します。先程失敗しましたが、新たにTapを追加するとインストールを行うことができます。Tapを追加することでインストール、管理できるパッケージが増えることが確認できました。
homebrew/cask-versionsを追加後に再度braveを検索すると先程まで表示されていたhomebrew/cask-versions/が消えて、インストールされているパッケージにチェックがついていることを確認できます。