Homebrew とは
Homebrew は Macのパッケージマネージャー。パッケージのインストール、バージョン管理、削除などを、コマンドで一元管理できるのがメリット。拡張機能 homebrew-cask で、通常の Macアプリも管理することができる(対応しているもののみ)。指定ディレクトリにパッケージをインストールし、それらへのシンボリックリンクを/usr/localに作る仕組み。
Homebrew のインストール
Homebrew公式 から、 Homebrew をインストールするコマンドをターミナルにコピペして実行
(2024-10-12 更新)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
以下、インストール時に実行されるコマンド。既存のディレクトリの権限に変更を加えたり、Homebrew 用のディレクトリを作成したりする。mkdir コマンドに目を通し、でどんなディレクトリが作られているか把握しとくと良い。
==> /usr/bin/sudo /usr/bin/install -d -o root -g wheel -m 0755 /opt/homebrew
==> /usr/bin/sudo /bin/mkdir -p /opt/homebrew/bin /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
==> /usr/bin/sudo /bin/chmod ug=rwx /opt/homebrew/bin /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
==> /usr/bin/sudo /bin/chmod go-w /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions
==> /usr/bin/sudo /usr/sbin/chown takna /opt/homebrew/bin /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
==> /usr/bin/sudo /usr/bin/chgrp admin /opt/homebrew/bin /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
==> /usr/bin/sudo /usr/sbin/chown -R takna:admin /opt/homebrew
==> /usr/bin/sudo /bin/mkdir -p /Users/takna/Library/Caches/Homebrew
==> /usr/bin/sudo /bin/chmod g+rwx /Users/takna/Library/Caches/Homebrew
==> /usr/bin/sudo /usr/sbin/chown -R takna /Users/takna/Library/Caches/Homebrew
==> Downloading and installing Homebrew...
remote: Enumerating objects: 283625, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (44/44), done.
remote: Total 283625 (delta 0), reused 44 (delta 0), pack-reused 283581 (from 1)
remote: Enumerating objects: 55, done.
remote: Counting objects: 100% (33/33), done.
remote: Total 55 (delta 33), reused 33 (delta 33), pack-reused 22 (from 1)
==> Updating Homebrew...
==> Downloading https://ghcr.io/v2/homebrew/portable-ruby/portable-ruby/blobs/sha256:e7340e4a1d7cc0f113686e461b93114270848cb14676e9037a1a2ff3b1a0ff32
######################################################################################### 100.0%
==> Pouring portable-ruby-3.3.5.arm64_big_sur.bottle.tar.gz
Warning: /opt/homebrew/bin is not in your PATH.
Instructions on how to configure your shell for Homebrew
can be found in the 'Next steps' section below.
==> Installation successful!
説明通り、以下のコマンドで PATH を設定
-
echo >> /Users/takna/.zprofile
. -
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/takna/.zprofile
. eval "$(/opt/homebrew/bin/brew shellenv)"
brew doctor
で正常に動作しているか確認して完了。
※以降は 2024-10-12 に未チェックなので今は違うかも
メモ
- Homebrew では、パッケージのことを Formura と呼ぶ (ここではパッケージと呼ぶ)
- Homebrew でインストールしたパッケージは、全て "/usr/local/Cellar" にインストールされる(場所の変更可)
- homebrew-cask でインストールしたアプリは、"/usr/local/Caskroom" にインストールされる
コマンド
brew help
コマンド一覧
brew --config
設定の確認
バージョンチェック
brew -v
問題がないかチェック
brew doctor
Homebrew 本体のアップデート(インストール直後に実行)
(今はエラーになる)brew update
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
結構時間かかる。続けて、
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow
パッケージを探す(例:wget を探す場合)
brew search wget
パッケージをインストール
brew install wget
パッケージの有効化と無効化
brew unlink wget
# 一時的に無効化
brew link wget
# 有効化
パッケージ(formula)の更新
brew update && brew upgrade && brew cleanup
更新 → アップグレードがあるパッケージを再ビルド → 古いパッケージを手動削除 (30日以上古いものは自動削除されるので必須ではない)。brew prune
(デッドリンクになっているものを削除)は、brew cleanup
に吸収されたので今は不要
brew doctor
# 動作テスト
インストールされたリストを表示する
brew list
パッケージをアンインストール
brew remove wget
Macアプリをインストール
homebrew-cask は、Macアプリをコマンドで管理する homebrew の拡張機能
-
brew install --cask google-chrome
(Chrome) -
brew uninstall --cask google-chrome
アンインストール
QuickLook 拡張のインストール
brew install betterzip mdimagesizemdimporter qlcolorcode qlimagesize qlmarkdown qlstephen qlvideo quicklook-csv quicklook-json quicklook-pat quicklookase scriptql suspicious-package
xattr -r ~/Library/QuickLook
xattr -d -r com.apple.quarantine ~/Library/QuickLook
Homebrew 本体のアンインストール
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
その他のコマンド
エラーの対処例
brew doctor
で以下のメッセージが出た場合。
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!
Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected dylibs:
/usr/local/lib/libusb-1.0.0.dylib
該当のファイルをゴミ箱に移動。
mv /usr/local/lib/libusb* .Trash/
再び brew doctor
して問題がないことを確認。