苹果迷苹果迷  2026-09-14 16:20 苹果家园 隐藏边栏 |   抢沙发  2 
文章评分 1 次,平均分 4.0
导语: Homebrew 7.0.0 正式发布:安装与升级改为并发执行,Linux 换用 Landlock 沙箱,并内置 brew vulns 漏洞检查;同时推出官方图形界面 BrewUI,用鼠标即可浏览、搜索和管理软件包。本文整理升级命令、安装方式,以及各系统的支持门槛与版本要求。

Homebrew 7.0.0 已经发布,这一版带来两件大事:一是安装与升级改成并发执行、安全沙箱换成 Landlock 并内置漏洞检查;二是首次附带官方图形界面 BrewUI,让不熟悉终端的人也能用鼠标管理软件包。升级只需一条命令,但门槛有变化——Intel Mac 从这一版起被划进 Tier 3。

7.0.0 更新了什么

Homebrew 7.0.0 四个重点:性能多任务并发、安全换用 Landlock 沙箱并内置漏洞检查、命令新增 dry-run 与 JSON 诊断、官方图形界面 BrewUI
图表来源:本站根据 Homebrew 7.0.0 官方发布说明整理制作

官方把改动分成了性能、安全、命令三块,再单独讲 macOS App。用一句话概括:装得更快、防线更厚、命令更好用,并且多了一个窗口。

性能:下载、准备、安装三阶段并发

7.0.0 的核心性能改动是把原本串行的流程拆成并发流水线。重点是这几处:

  • brew installbrew reinstallbrew upgrade 会把「准备」与「下载」两个阶段重叠执行,包括 brew bundle 批量安装的场景,缩短包与包之间的等待。
  • brew config 改为并发采集独立的系统信息,编译器、操作系统与仓库检查同时进行,不再让诊断报告逐个等子进程。
  • brew cleanup 避免了重复扫描缓存,装的包越多,清理提速越明显。
  • brew fetch 直接从 API 元数据读取下载信息,不必为了拿 URL 和校验和去加载完整的包定义。
  • brew update 会提前准备 Ruby 缓存,让后续命令启动更快;同时在每次加载时校验签名,保证真实性。

另外,Homebrew 启动时调用的子进程更少了,并且改为直接读取终端尺寸,顺带修掉了配合 uutils 版 stty 时的卡死问题。

安全:Linux 换用 Landlock,新增内置漏洞检查

Homebrew 6.0.0 在 Linux 上引入了 Bubblewrap 沙箱,7.0.0 把它换成了 Landlock。这个改动很务实:Landlock 不需要额外依赖,也不需要提升的 Docker 权限,而后者正是 Bubblewrap 部署时经常卡住的地方。内核不支持 Landlock 时,Homebrew 仍能运行,只是没有 Linux 沙箱这一层保护,brew doctor 会把缺失的保护当成提醒告诉你。brew config 也会报告 Landlock 的 ABI 版本,方便排查。

macOS 这一侧的沙箱同时加厚:

  • 默认阻止沙箱读取用户主目录,让与构建无关的个人文件留在外面,只放行 Homebrew 需要的路径;私有临时目录让构建工具可以在本地通信,同时不开放网络访问。
  • Homebrew 以签名的结构化数据下发安装配置,并对 formula 与 cask 操作做沙箱限制,减少任意 Ruby 代码执行。
  • 开始把依赖下载迁移到独立的 fetch 阶段:迁移后的 formula 在联网、可写的缓存中下载,随后 install 阶段关闭网络并把缓存改为只读。
  • 在读取配置之前就拒绝真实 UID 与有效 UID 不一致的情况,删掉了一段针对不受支持共享安装的提权代码。
  • 顺手放开了沙箱内的 Metal 着色器编译,让 ggml、whisper.cpp 这类项目能在不联网的前提下用上 GPU 测试。

7.0.0 还修了一批安全问题,其中一条正好和图形界面有关:恶意 cask 可经由 LaunchServices 在 macOS 安装沙箱之外执行代码,Homebrew 现在会限制应用启动、Mach 服务与 Unix 套接字连接。另一条高危问题(未签名的 cask 卸载元数据能以 sudo 执行命令)已在 6.0.12 修掉,相关恢复代码与 API 已整体删除。

对普通用户最实用的是新增的 brew vulns——它直接内置,不需要额外 tap 或 gem,底层用 OSV.dev 的漏洞数据检查你已安装的 formula。--severity=high 只看高危,--deps 连依赖一起查,--brewfile 可以按 Brewfile 检查;--fix-available--no-fix-available 用来区分「有修复」和「还没修复」,--fix-type 区分已发布修复与临时补丁。配套的漏洞公告库记录的是 Homebrew 实际分发的 formula 版本,公告数据以 OSV 格式提供、按 CC0 开放复用。

命令:先预览再动手,信息更清楚

  • brew install --dry-run 可以同时预览 formula 与 cask,确认无误再真装。
  • brew info 标出「根本装不了」的包,用 标出「还没装」的包,并把不满足的系统与架构要求标出来——在动手之前就能判断这台机器能不能跑。
  • brew doctor --json 输出结构化诊断,方便写进脚本或自动化流程;不带参数时还会在检测到 PATH 里有另一个 brew 抢位时报错提示。
  • brew list --no-installed-on-request 用来找出「当初只是作为依赖被装进来」的包。
  • brew services 支持从 $HOMEBREW_USER_CONFIG_HOME/services/<formula>.env 读取持久化覆盖,本地服务配置不再被升级冲掉;新注册的服务在 macOS 与 Linux 上都使用 sh.brew.<formula> 标识,旧登记项会在重启前继续被识别。
  • brew deps --brewfile 可以在真正安装之前,先看清一个开发环境会带进来哪些依赖。
  • brew untap 会先问你要不要把这个 tap 下的包一并卸载,省得留下归属不明的软件。
  • 新增 HOMEBREW_AUTO_UPDATE_QUIET,自动更新的包详情不再刷屏。

cask 侧也有几处调整:当 formula 与 cask 提供同名命令时,formula 的链接优先,并会提示如何恢复 cask 的链接;brew upgrade 会跳过不兼容的 cask、继续升级兼容的应用;brew linkbrew unlink 现在接受 --cask--formula,可以在不重装的前提下停用或恢复某个 cask 的命令行工具、man page 与补全脚本。

官方图形界面 BrewUI:终端之外多一个窗口

Homebrew 官方图形界面 BrewUI 主界面:左侧为软件包列表与已安装状态,右侧为选中包的详情与操作按钮
图片来源:Homebrew 官方图形界面 BrewUI 演示截图

发布说明里最受关注的是这一节:BrewUI 是 Homebrew 正式发布的官方 macOS 图形界面,目标很明确——让习惯图形操作的人也能安全地发现、安装、更新和管理软件包,同时不隐藏 Homebrew 到底做了什么

怎么安装

官方给出的安装命令是:

brew install homebrew-app

它对应的是 Homebrew 官方 cask,所以写成 brew install --cask homebrew-app 同样可行。装完之后叫「Homebrew.app」,直接出现在「应用程序」里。

它把包浏览、搜索和已装版本收进一个窗口

BrewUI 提供软件包浏览、搜索和已装版本详情,方便你先看有哪些软件可选,再回头核对本机已经装了什么。它由 Homebrew 维护者用 Swift 6.0 + SwiftUI 编写,数据来自 brew 命令行与 Homebrew 的 JSON API。

真正让它区别于第三方 GUI 的是一条设计约束:每个操作都会把底层对应的 brew 命令显示出来。也就是说,图形界面是终端命令的透明外壳,而不是另起一套黑箱——你在界面上点的每一步,都能在下面对上一条熟悉的命令。项目本身也写明「brew 是唯一事实来源」,界面不去触碰 Homebrew 内部结构。

安装方式上,BrewUI 是未沙箱的 macOS 应用,仅支持 Homebrew 默认前缀,初期也不接管自定义 tap;它会依次尝试 /opt/homebrew/bin/brew/usr/local/bin/brew 来定位已有的 Homebrew,并不打包 Homebrew 本体。界面下载体积很小:Homebrew-0.4.0.zip 约 3.5 MB,另有约 150 MB 的 pkg 安装包。

需要 macOS Tahoe 26 及以上

这是最容易踩的一点:BrewUI 要求 macOS Tahoe 26 或更新版本,Homebrew 官方 cask 里也明确写了依赖 Tahoe。如果你还在 Sonoma 或 Sequoia,得先升级系统才能装上这个图形界面——命令行版的 Homebrew 本身不受影响。

BrewUI 采用 AGPL-3.0 许可发布,源码公开在 Homebrew/BrewUI 仓库,目前是稳定且在持续开发的状态。

版本与平台支持门槛

Homebrew 7.0 平台支持门槛对照表:Catalina 及更早已移除、Intel 进入 Tier 3、Sonoma 14 进入 Tier 3、Sequoia 15 与 Tahoe 26 与 Golden Gate 27 为 Tier 1、图形界面需 macOS Tahoe 26 以上
图表来源:本站根据 Homebrew 7.0.0 官方发布说明整理制作

7.0.0 同时收紧了支持窗口,几条变化值得单独说:

  • macOS Catalina 10.15 及更早被移除,最低要求提到 macOS Big Sur 11。
  • Intel Mac 进入 Tier 3:已有 bottle 仍可用,但更新后的 formula 可能需要本地源码编译。其中关键一条是——7.0.0 的 .pkg 安装器只面向 Apple Silicon,并且要求 macOS Sequoia 15 或更新。
  • macOS Sonoma 14 也进入 Tier 3,没有新的预编译 bottle,官方建议升到 Sequoia 15 或更新。
  • Sequoia 15、Tahoe 26 与 Golden Gate 27 在 Apple Silicon 上是 Tier 1,有预编译 bottle 可用;其中 Golden Gate 27 得到完全支持。
  • Intel Mac 仍可运行到 2027 年 9 月,但没有项目支持,也没有例行的 bottle 构建。官方在结尾把话说得很直白:Apple 已从 macOS 27 移除 Intel 支持,GitHub Actions 也将在 2027 年秋退役 Intel 版 macOS 运行器,如果这两家都做不到,Homebrew 作为志愿者项目更做不到,并建议 Intel 用户考虑 MacPorts。
  • 另有两条停用时间表:Homebrew/brew 的 master 分支将在 2027 年 3 月 1 日之后移除,改用 main;Apple Silicon 上的 macOS 11Intel macOS 均在 2027 年 9 月 1 日走向支持终止。

顺带一个好消息:7.0.0 起,Homebrew 安装预编译 cask 时不再需要 Xcode Command Line Tools,装图形应用少了一层编译器依赖,新机首次配置更省事。

怎么升级到 7.0.0

Homebrew 7.0.0 常用命令速查:brew update 升级、brew install --cask homebrew-app 安装图形界面、brew vulns 检查漏洞、brew doctor --json 结构化诊断、brew install --dry-run 预览安装
图表来源:本站根据 Homebrew 7.0.0 官方发布说明整理制作

升级本身没有额外步骤:自动更新会把你带到 7.0.0,也可以手动执行 brew update(若你设过 HOMEBREW_NO_AUTO_UPDATE,手动跑一次即可)。想确认当前版本,用 brew --version 看第一行,7.0.0 之后即为新版。

升级完建议顺手做三件事:一是跑一次 brew vulns --severity=high,看看已装软件有没有已知高危漏洞;二是检查 brew doctor 的输出,重点看 PATH 里是否存在另一个 brew,以及 Linux 上的沙箱提醒;三是如果你在 Linux 上用容器跑 CI,注意官方已退役 ghcr.io/homebrew/ubuntu22.04 镜像,改用 ghcr.io/homebrew/brew;GitHub Actions 里写死 Homebrew/actions/*@master 的引用已被移除,要改成 CalVer 版本号或完整 SHA。

常见问题

BrewUI 是第三方做的吗?

不是。它由 Homebrew 官方维护,发布说明里明确写作「Homebrew 已正式发布的官方图形界面」,源码位于 Homebrew 组织下的 BrewUI 仓库,采用 AGPL-3.0 许可。它与 Homebrew 命令行的定位是补充而非替代,界面会显示对应的 brew 命令。

不装图形界面会影响 Homebrew 使用吗?

不会。BrewUI 是可选组件,命令行版功能完全独立,且要求更高的系统版本;只升级 Homebrew 本体不需要 macOS Tahoe 26。

Intel Mac 上还能继续用吗?

可以,但要接受两个前提:已发布的 bottle 仍能安装,而部分更新后的 formula 需要在本机从源码编译,耗时更长;同时 7.0.0 的 .pkg 安装器已不支持 Intel。如果只是想要稳定的二进制包,官方建议评估 MacPorts。

brew vulns 需要额外装东西吗?

不需要。它是 7.0.0 内置命令,直接读取 OSV.dev 的数据,不依赖新的 tap 或 gem。默认扫描已安装的 formula,遇到不受信任的 tap 会跳过并在 --list-skipped 中列出。

升级要多长时间?

Homebrew 的升级主要是拉取仓库与自身组件,通常几分钟内完成。若升级后出现异常,可先执行 brew doctorbrew config,两者都会给出较明确的原因。

官方入口与下载

小结

Homebrew 7.0.0 属于一次「底盘加固」式的大版本:并发化让装了上百个包的机器明显受益,Landlock 与内置漏洞检查把安全这一块补得更完整,brew install --dry-runbrew doctor --json 这类改动则让它在脚本与自动化里更好用。而 BrewUI 的出现,第一次让 Homebrew 有了自己的窗口——它没有把命令行藏起来,反而把每条命令摆在你面前。

如果你日常用 Homebrew 装开发环境(比如在 Mac 上装 Redis终端模拟器数据库客户端),这次升级值得做;只是升完记得看一眼系统版本,图形界面和 Intel 平台各有各的门槛。

声明:本文来自投稿,不代表苹果家园立场,版权归原作者所有,欢迎分享本文,转载请保留出处!

发表评论

表情 格式 链接 私密 签到

友情链接

    扫一扫二维码分享