Homebrew のインストール先は、デフォルトでは /usr/local になっています。
インストール先を /opt/homebrew にするには、以下のようにします。
Homebrew 本体のインストール
まず、あらかじめ /opt/homebrew ディレクトリを作成しておきます。
cd /opt
sudo mkdir homebrew
sudo chown ${USER}:staff homebrew
通常のインストールスクリプトを実行する代わりに、以下を実行します。このコマンドは、Homebrew ドキュメントの Alternative Installs に書かれているものです。
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew
インストールそのものはこれだけです。あとは実行パスの設定さえしてしまえば brew コマンドが使えます。
実行パスの設定
/usr/local/bin と違ってデフォルトで実行パスが通っていないので、以下のどれかで設定します。
-
/etc/pathsに/opt/homebrew/binを追加。 -
/etc/paths.d/homebrewというファイルを作って/opt/homebrew/binと記述。(ただし、/etc/paths.d/*は/etc/pathsよりも後にパスが追加される点に注意) -
~/.zshrcや~/.bashrcでPATH環境変数を設定。
インストール先を取得するには
brew --prefix がインストール先を返してくれます。
キャッシュパスの設定
キャッシュの参照先が /usr/local や /Library/Caches になってしまうようなので、パスを変更します。
~/.zshrc や ~/.bashrc で以下を設定します。
export HOMEBREW_CACHE=/opt/homebrew/cache
この内容は、コメントでご指摘いただいたものです。ありがとうございます。
補足:なぜインストール先を変更するのか
Homebrew は /usr/local にインストールすることを推奨しています。
しかし、/usr/local はそもそもホスト管理者に与えられた場所で、自前でビルドしたものやローカルで用意したツールなどを置く場所です。パッケージマネージャに入ってきてほしい場所ではありません。
/usr/local を本来の意味で使いたいため、Homebrew は /opt にインストールすることにしました。
補足:インストール先を変更するデメリット
Homebrew は brew install 時にビルド済みバイナリがあるものはバイナリをインストールしてくれるようになっています。
しかし、インストール先を変更していると、多くの場合にビルド済みバイナリがそのままでは使えず、ソースからインストールすることになります。このため、brew install の動作が遅くなります。