curl -fsSL https://zerobrew.rs/install | bash安装程序会更新你的 shell 配置。完成后,重启终端,或运行它打印的 source 命令。
或通过 Homebrew 安装:
brew install lucasgelfond/zerobrew/zerobrew如果使用独立安装脚本,重新运行:
curl -fsSL https://zerobrew.rs/install | bash
zb --version如果通过 Homebrew 安装:
brew update && brew upgrade zerobrewzb update 只刷新软件包元数据。zb upgrade 升级通过 zerobrew 安装的软件包。它们都不会更新 zb 二进制文件本身。
zb install jq # 安装单个软件包
zb install wget git # 安装多个软件包
zb bundle # 从 Brewfile 安装
zb bundle install -f myfile # 从自定义文件安装
zb bundle dump # 将已安装的软件包导出到 Brewfile
zb bundle dump -f out --force # 导出到自定义文件(覆盖)
zb uninstall jq # 卸载单个软件包
zb outdated # 列出有新版本可用的软件包
zb upgrade # 升级所有已过期的软件包
zb upgrade jq wget # 升级指定的软件包
zb reset # 卸载所有内容
zb gc # 垃圾回收未使用的存储条目
zbx jq --version # 在不链接的情况下运行| 软件包 | Homebrew | ZB (冷启动) | ZB (热启动) | 冷启动加速 | 热启动加速 |
|---|---|---|---|---|---|
| 总体 (前 100 名) | 452s | 226s | 59s | 2.0x | 7.6x |
| ffmpeg | 3034ms | 3481ms | 688ms | 0.9x | 4.4x |
| libsodium | 2353ms | 392ms | 130ms | 6.0x | 18.1x |
| sqlite | 2876ms | 625ms | 159ms | 4.6x | 18.1x |
| tesseract | 18950ms | 5536ms | 643ms | 3.4x | 29.5x |
zerobrew 更像是一个针对 Homebrew 生态系统进行性能优化的客户端。我们依赖于:
- Homebrew 的 formula 定义 (homebrew-core)
- Homebrew 提供的预构建 bottle(如果可用)
- Homebrew 的软件包元数据和基础设施
我们的创新重点在于:
- 用于去重的基于内容的寻址存储 (Content-addressable storage)
- 用于零开销复制的 APFS clonefiles
- 使用 Homebrew 的 Ruby DSL 的源码编译回退 (Source build fallback)
zerobrew 处于实验阶段。我们建议将其与 Homebrew 并行运行,而不是作为替代品。除非您完全确定其影响,否则不建议清除 Homebrew 并将其替换为 zerobrew。
- 状态: 处于实验阶段,但对于许多常见的 Homebrew formulas 已经非常有用。
- 反馈: 如果遇到不兼容问题,请提出 issue 或 PR。
- 许可证: 根据您的选择,在 Apache 2.0 或 MIT 下获得双重许可。
