
zerobrew:为 macOS 和 Linux 带来 uv 风格的包管理体验
zerobrew 是一款面向 macOS 和 Linux 的新型包管理工具,旨在将类似 Python 包管理器 uv 的高效架构引入 Homebrew 生态。通过优化底层安装机制,zerobrew 在保持与 Homebrew 高度兼容的同时,显著提升了软件包的安装与更新速度。
核心性能表现
根据 2026 年 10 月 8 日在 macOS 26.6.2 (MacBook Pro M3 Pro, 18GB RAM) 环境下进行的基准测试,zerobrew 0.3.5(开发版)相比 Homebrew 7.0.8 展现出显著的性能优势:
- 总体加速:在安装 100 个常用软件包的测试中,zerobrew 的冷启动(无缓存)安装速度比 Homebrew 快 6.6 倍(117s vs 776s);热启动(有缓存)速度更是快了 68 倍(9.3s vs 638s)。
- 极端案例:部分软件包在热启动下的加速比超过 100 倍,例如
ca-certificates加速达 252 倍,node加速达 121.7 倍。 - 网络影响:在低速网络(约 69 Mbit/s)环境下,冷启动加速比降至 3.3 倍,表明冷启动性能受限于下载带宽;而热启动加速比仍保持在 69 倍,凸显其在本地处理上的效率。
测试定义:冷启动指卸载所有包并清空下载缓存;热启动指卸载包但保留下载缓存。
技术原理:站在 Homebrew 的肩膀上
zerobrew 并非独立的包构建系统,而是 Homebrew 生态的一个高性能客户端。其核心差异在于安装后的处理流程:
- Homebrew:下载 Bottle 后,需运行 Ruby 评估 Formula,解压文件,使用
install_name_tool重写路径,并逐个对二进制文件重新签名。 - zerobrew:采用进程内重定位技术,结合基于内容寻址的存储库和 APFS
clonefiles实现零开销复制。这意味着下载只需进行一次,后续安装几乎无额外开销。
项目方强调,zerobrew 完全依赖 Homebrew 的构建农场提供的预编译 Bottle 和 Formula 定义,不进行任何自行编译或维护 Formula 的工作。其速度提升源于工件安装方式的优化,而非内容本身的改变。
快速上手
安装 zerobrew
方式一:独立脚本安装
curl -fsSL https://zerobrew.rs/install | bash
方式二:通过 Homebrew 安装
brew install zerobrewhq/zerobrew/zerobrew
常用命令
zb install <pkg>:安装单个或多个软件包zb bundle:从 Brewfile 安装依赖zb upgrade:升级所有或指定软件包zb gc:垃圾回收,清理未使用的存储条目zbx <cmd>:在不链接的情况下运行命令
项目状态与建议
目前 zerobrew 仍处于实验阶段。开发者建议用户将其与 Homebrew 并行运行,而非直接替换。在不明确潜在后果的情况下,不建议清除现有 Homebrew 环境并完全迁移至 zerobrew。
项目采用 Apache 2.0 或 MIT 双重许可。如遇兼容性问题,用户可通过 GitHub 提交 Issue 或 PR。CI 流程中包含严格的回归测试,若新版本在特定场景下性能下降超过阈值(冷启动慢于 Homebrew 1.5 倍或热启动慢于 3 倍),构建将自动失败。