Homebrew 7.0.0公開、Intel MacはTier 3に格下げ

Homebrewは2026年9月13日、Homebrew 7.0.0を公開しました。6.0.0からの主な変更は、インストールとアップグレードの高速化、サンドボックスの強化、公式のmacOSアプリBrewUI、組み込みの脆弱性チェックbrew vulnsと独自のアドバイザリデータベースです。同時にmacOS 10.15のサポートを終了し、Intel MacをTier 3に移しました。Intel Macでは新しいbottle(ビルド済みバイナリ)の提供が止まり、2027年9月1日にはHomebrew自体が動かなくなります。

Intel MacはTier 3、2027年9月に実行も終了

macOS向けのサポート変更は次のとおりです。Intel Macの格下げは2025年8月に予告され、2025年11月12日の5.0.0リリースノートでも繰り返されていたものです。Homebrewは、AppleとGitHubがIntelサポートから退いており、ボランティアで肩代わりできる範囲を超えたと説明しています。

対象 7.0.0での状態 時期 移行先
macOS Catalina 10.15以前 削除 今すぐ macOS Big Sur 11以降
Intel Mac Tier 3、新しいbottleなし 今すぐ Apple siliconかMacPorts
macOS Sonoma 14 Tier 3、新しいbottleなし 今すぐ macOS Sequoia 15以降
macOS Golden Gate 27(Apple silicon) Tier 1、bottleあり 今すぐ 移行不要
Intel MacでのHomebrew実行 削除予定 2027年9月1日 Apple siliconか他のパッケージマネージャ
Apple siliconのmacOS Big Sur 11 削除予定 2027年9月1日 macOS Monterey 12以降

Intel Macでは既存のbottleはそのまま残りますが、更新されたformulaはソースからのビルドが必要になる場合があります。.pkg形式のインストーラはApple silicon専用で、macOS Sequoia 15以降が必要です。Apple siliconではSequoia 15、Tahoe 26、Golden Gate 27がTier 1です。

ローカルLLMの利用者に関係する変更として、HomebrewはmacOSのサンドボックス内でMetalシェーダのコンパイルを許可しました。これによりggmlとwhisper.cppのテストが、ネットワークアクセスなしでGPUアクセラレーションを使えます。また、ビルド済みのcaskはXcode Command Line Toolsなしでインストールできるようになりました。

インストールとアップグレードの並列化

brew install、brew reinstall、brew upgradeは、パッケージの準備とダウンロードを重ねて実行するようになりました。brew bundleのバッチにも同じ仕組みが適用され、Brewfileからのインストールも複数パッケージを指定したコマンドと同じ共有処理の恩恵を受けます。

そのほかの高速化は次のとおりです。

  • brew fetchはbottleとcaskのダウンロード情報をAPIメタデータから直接読み、URLとチェックサムを知るためだけにパッケージ定義全体を読み込まなくなりました。
  • brew updateはRubyのキャッシュを事前に準備し、後続コマンドの起動を速くします。
  • 解析済みのAPIデータを2回目以降の実行で再利用し、読み込みのたびに署名は検証します。
  • 起動時に立ち上げるサブプロセスを減らし、端末の寸法を直接読むことでuutilsのsttyによるハングを避けます。
  • brew cleanupはキャッシュの走査を繰り返さず、brew configとbrew tap-info --installed --json=v1は独立した項目を並行して集めます。

サンドボックス強化と脆弱性チェック

セキュリティ面では、6.0.6から7.0.0にかけて修正した8件のアドバイザリを公表しています。深刻度Highの1件(GHSA-rg9r-ppxp-87hm、6.0.12で修正)は、署名のないcask削除用メタデータがsudoでコマンドを実行できる問題で、該当する復旧コードとAPIアクセサを削除しました。Moderateの1件(GHSA-5263-whxq-77hp、7.0.0で修正)は、悪意のあるcaskがLaunchServices経由でmacOSのインストール用サンドボックスの外でコードを実行できる問題で、アプリケーションの起動、Machサービス、Unixソケット接続を制限しました。

サンドボックスの変更は次のとおりです。

  • formulaとcaskの処理をサンドボックス化し、任意のRubyコードの実行を減らしました。
  • 依存関係のダウンロードをfetchフェーズへ移し、移行済みのformulaではinstall時にネットワークを切ってキャッシュを読み取り専用にします。移行は継続中です。
  • サンドボックス内からのホームディレクトリの読み取りを既定でブロックし、個人ファイルをパッケージのビルドから切り離します。
  • 実UIDと実効UIDが一致しない実行を設定読み込み前に拒否し、共有インストール向けの権限切り替えコードを削除しました。

Homebrewは、第三者caskへの主な防御は引き続きTap trustであり、サンドボックスは主に偶発的な損害を抑えるものだと位置づけています。アプリケーションはユーザーの権限で動き、ベンダーの.pkgインストーラはサンドボックスの外で実行されます。

脆弱性チェックのbrew vulnsはHomebrew本体に組み込まれ、別のtapやgemなしでOSV.devの情報からインストール済みformulaを検査します。--severity=high、--deps、--brewfileで対象を絞り、--fix-availableと--no-fix-available、--fix-typeで修正の有無や種類を分けて優先順位を付けられます。新しいアドバイザリデータベースはHomebrewが配布するformulaのバージョンとrevisionに対して脆弱性を記録し、バックポートした修正も含みます。OSV形式のレコードはCC0で再利用できます。あわせて、SBOMに上流のパッケージ識別子を追加してPyPI、npm、Cargoなどのレジストリと結び付けられるようにし、対応する第三者tapのbottleについてもattestationを検証します。

Linuxでは、6.0.0で導入したBubblewrapによるサンドボックスをLandlockに置き換えました。依存パッケージやDockerの権限昇格が不要になります。Linux 6.1のLandlock ABI 2に対応し、カーネルがネットワーク制限を強制できない場合は警告します。Landlockのないカーネルでは6.0.0以前と同じサンドボックスなしの構成で動き、brew doctorが注意として報告します。

公式アプリBrewUIと新しいコマンド

BrewUIはHomebrewの公式GUIで、macOS Tahoe 26以降にbrew install homebrew-appでインストールします。パッケージの閲覧、検索、インストール済みバージョンの確認を1つのウィンドウにまとめ、操作の裏で実行するbrewコマンドを表示します。

コマンドと設定の主な追加は次のとおりです。

コマンド・設定 内容
brew install --dry-run formulaとcaskをまとめてプレビュー
brew list --no-installed-on-request 依存関係としてインストールされたformulaを表示
brew info インストールできないパッケージを⊘、未インストールを✘で区別し、OSやアーキテクチャの要件不足を表示
brew services $HOMEBREW_USER_CONFIG_HOME/services/<formula>.envから永続的な環境変数の上書きを読み、アップグレード後も維持
brew link --cask / brew unlink --cask caskのバイナリ、manページ、補完を再インストールなしで無効化・復元。--dry-runで確認
brew doctor --json 自動化向けの構造化された診断。PATH上の別のbrewが現在のインストールを隠している場合も警告
brew deps --brewfile Brewfileの依存関係を事前に確認
brew untap tapのパッケージを先にアンインストールするか確認
HOMEBREW_AUTO_UPDATE_QUIET 自動更新時のパッケージ詳細の出力を抑制

formulaとcaskが同じコマンドを提供する場合はformulaのリンクが優先され、caskのリンクを戻す方法を警告で示します。brew upgradeは互換性のないcaskをスキップし、HOMEBREW_NO_UPGRADE_AUTO_UPDATES_CASKSで自己更新するアプリの除外設定を維持します。

既定以外のprefixについては、互換性のあるbottleを短いprefixへ再配置してソースビルドを避けるようになりました。上限はApple siliconのmacOSで13バイト、Linuxで26バイト、既存のIntel macOS bottleで10バイトで、スラッシュを含むパス全体を数えます。Apple siliconとLinuxで64バイトまでのprefixに対応するパディング付きビルドを計画していますが、既定以外のprefixは引き続き非サポートで、時期は未定です。

アップグレード方法と廃止予定

自動更新か、$HOMEBREW_NO_AUTO_UPDATEを設定している場合は手動のbrew updateで7.0.0に上がります。廃止予定のインターフェースは、無効化までは警告、無効化後は拒否、削除後は利用不可になります。

対象 7.0.0での扱い 時期
ghcr.io/homebrew/ubuntu22.04イメージ 削除。ghcr.io/homebrew/brewへ移行 今すぐ
Homebrew/actions/*@master 削除。CalVerのリリースか完全なSHAを指定 今すぐ
実UIDと実効UIDが異なるsetuidラッパー 拒否 今すぐ
第三者製のbrewラッパー Tier 3。内部コマンドはラッパーを迂回 今すぐ
Homebrew/brewのmasterブランチ 凍結。mainへ切り替え 2027年3月1日
第三者formulaのpost_installとcaskのflightブロック 非推奨。*_stepsへ移行。brew style --fixが一般的なフックを変換 2027年12月11日
HOMEBREW_SANDBOX_LINUX 無効化。Landlockが利用可能なら自動で使う 今すぐ
HOMEBREW_NO_SANDBOX_LINUX、HOMEBREW_ARCH 非推奨 2027年12月11日

この記事の固有名詞

コメント (0)

まだコメントはありません。

コメントを書く

2000文字以内