Homebrew用語の意味

この記事は、独特なネーミングがされていて、知っているようで知らないHomebrewの用語の意味を正しく理解するために書きました。

用語一覧

Homebrewは「自家醸造」の意味です。この「醸造」の世界観の元で、Homebrewで扱う一部の概念の名前がつけられていて、直感的に何を指すのかが少しわかりにくいことがあります。

インストール関連のトラブルやPATHを通すパッケージのバージョンを調整したいときに、これらの用語を知っていると、エラー・警告メッセージの内容や、brew info コマンドなどで説明されている内容を理解しやすくなると思います。

以下、用語の定義と意味を説明します。正式な情報は公式サイトを参照してください。

用語 意味

formula
(製法)

homebrewでupstreamのソースからビルドするパッケージの定義。formulaeは、その複数形。

cask
(大きいたる)

macOSネイティブアプリケーションをインストールするパッケージの定義。

keg
(小さいたる)

任意のformulaの任意のバージョンのインストール先ディレクトリ。
例 : /usr/local/Cellar/[formula]/0.1

rack
(棚)

1つ以上のバージョンのkegを含むディレクトリ。
例: /usr/local/Cellar/[formula]

prefix

homebrewでパッケージを配置する親ディレクトリ。
例: Intel Macの場合は、/usr/local

keg-only

kegにパッケージを配置するだけで、prefixのbinディレクトリに、シンボリックリンクが作られないこと。
postgresqlもkeg-onlyなので、brew install postgresqlでインストールしても、PATHが通った状態にはならない。
(keg-onlyなパッケージにPATHを通したければ brew link コマンドを使う。)

cellar
(貯蔵室)

1つ以上のrackを含むディレクトリ。
例: /usr/local/Cellar

Caskroom
(cask用の貯蔵室)

1つ以上のcaskを含むディレクトリ。
例 : /usr/local/Caskroom

external command Homebrew/brewのGitHubリポジトリ外で定義されているbrewの(追加インストール可能な)サブコマンド。

tap
(蛇口)

formula、cask、external command用のディレクトリ(かつ、通常はGitリポジトリ)。

bottle
(ボトル)

ソースからビルドするのではなく、cellarやrackに配置するために、事前にビルドされたkeg。

本サイトの更新情報は、Twitterの株式会社プレセナ・ストラテジック・パートナーズエンジニア公式アカウントで発信しています。ご確認ください。