☰
nanobrew 完全指南:用 Zig 编写的 macOS 极速包管理器,告别 57MB Ruby 运行时的终极替代
2026/10/14 16:37:49 网站建设 项目流程

【免费下载链接】nanobrew

The fastest macOS package manager. Written in Zig. 3ms warm installs.

项目地址:https://gitcode.com/gh_mirrors/na/nanobrew
点击查看免费下载

nanobrew是一款用Zig编写的 macOS/Linux 极速包管理器,单个 1.2 MB 的静态二进制替代 Homebrew 约 57 MB 的 Ruby 运行时,已安装包的热安装最快仅需约 3ms。它复用 Homebrew 的 formula、bottle 和 cask 生态,是即插即用的 Homebrew 替代品,冷安装快约 7.6 倍,热安装快约 11.8 倍。

一、为什么选择 nanobrew?

对于每天在 Mac 上敲brew install的开发者来说,等待brew update、Ruby 启动开销和 Gatekeeper 弹窗是常态。nanobrew 用几个关键设计换来了速度:

  • ⚡无 Ruby 运行时—— 单个 1.2 MB 静态二进制,启动零开销
  • 🚀并行下载—— 所有依赖同时下载解压,而非串行等待
  • 📦热安装毫秒级—— 已下载过的包重新安装只需 APFS 克隆 + 链接
  • 🚫无 Gatekeeper 隔离—— cask 安装跳过com.apple.quarantine,应用直接打开
  • 🔁无隐式自动更新——nb install只做安装,自我更新由nb update显式触发

nanobrew vs Homebrew 核心对比

维度Homebrewnanobrew
运行时Ruby(约 57 MB)单个 1.2 MB 静态二进制
自动更新brew install前自动跑brew update(可能数分钟)只安装,自更新用nb update
下载方式默认串行依赖并行下载开箱即用
应用隔离属性有 Gatekeeper 弹窗无隔离标记,即装即用

如果你重度依赖post_install钩子、源码编译选项或 Mac App Store,Homebrew 仍是更好的选择;nanobrew 覆盖的是绝大多数 CLI 工具、bottle 和 cask 场景。

二、一键安装 nanobrew:最快配置方法

方式一:官方一行脚本安装

curl -fsSL https://nanobrew.trilok.ai/install | bash

方式二:从源码构建(需要 Zig 0.16.0+)

git clone https://gitcode.com/gh_mirrors/na/nanobrew cd nanobrew && ./install.sh

安装完成后,先执行一次nb init创建目录结构,然后就可以直接nb install <包名>了。升级时只需:

nb update

三、nb 常用命令速查表

学会了下面几条命令,就掌握了 90% 的日常使用场景:

命令作用
nb install tree安装包(支持一次装多个:nb install ffmpeg wget)
nb search ripgrep搜索 formula 和 cask
nb info jq查看包详情
nb list列出已安装软件
nb remove tree卸载
nb outdated检查哪些包有更新
nb upgrade升级全部(或nb upgrade tree指定升级)
nb pin tree/nb unpin tree锁定 / 解锁版本
nb rollback tree回滚到上一个版本
nb doctor/nb cleanup健康检查 / 清理缓存

安装完记得加个 shell 补全,体验更流畅:

nb completions zsh >> ~/.zshrc

四、性能实测:nanobrew 安装速度有多快?

以下数据来自仓库内置的基准测试(Apple Silicon 实测,完整方法见 BENCHMARKS.md):

单包无依赖(tree)

工具冷安装热安装
Homebrew8.99s2.25s
nanobrew1.19s(快 7.6x)0.19s(快 11.8x)

多依赖包(wget,共 6 个包)

工具冷安装热安装
Homebrew16.84s2.43s
nanobrew11.26s0.58s(快 4.2x)

Homebrew 的 8.99s 里约有 1.5s 花在 Ruby 启动、4.5s 花在链接与清理;而 nanobrew 的热安装实际安装动作只有约 40ms,时间几乎全部花在 API 查询上。

Linux / Docker 上还能替代 apt-get

--deb模式是完整的 apt-get 替代:纯 Zig 实现索引拉取、依赖解析、.deb下载与解压,无需子进程。实测安装git vim build-essential比 apt-get 快约12.9 倍(43.8s → 3.4s)。在 Dockerfile 中直接替换慢速的 apt-get:

COPY --from=nanobrew/nb /nb /usr/local/bin/nb RUN nb init && nb install --deb curl wget git

五、进阶玩法:版本固定、Cask 与第三方 Tap

精确安装指定版本

nb install wget@1.21.3 # 精确安装 wget 1.21.3 nb install python@3.11 # 安装 Homebrew 版本化 formula

版本化安装会自动锁定(auto-pinned),后续nb upgrade不会覆盖你选择的版本,需要时用nb unpin解除。设计细节见 docs/design/versioned-install.md。

安装 macOS 应用(Cask)

nb install --cask firefox # 安装 .dmg/.pkg/.zip 应用 nb upgrade --cask # 升级所有 cask

cask 升级采用事务化替换:激活前完整暂存、失败立即回滚、中断后可恢复。前 100 个热门 cask 走原生管道,完全不依赖brew子进程。

第三方 Tap 直接装

nb install user/tap/formula

nanobrew 会直接从 GitHub 拉取并解析 Ruby formula,无需brew tap步骤,是少数支持 tap 的快速 Homebrew 客户端。

信任机制:安装前就知道"能不能跑"

nb info <pkg>会显示校验和、来源审查与安装证据。nb install --trusted-only jq只允许安装经过端到端验证的包,pkg@trusted则解析该平台上最新通过签名的版本。完整分级设计见 docs/design/trust-tiers.md。

六、从 Homebrew 平滑迁移:一条命令迁移

nb migrate

它扫描/opt/homebrew/Cellar与 Caskroom 并把已装包导入 nanobrew 的数据库,之后nb list、nb outdated、nb upgrade都会识别你现有的包。两边互不干扰:nanobrew 的包装在/opt/nanobrew/prefix/Cellar/,想回退时执行nb nuke即可完全移除,不影响 Homebrew。

七、项目结构速览

路径说明
README.md完整命令列表与安装说明
BENCHMARKS.md性能基准数据与测试方法
docs/package-architecture.md包分发架构:bottle 来源与审核流程
docs/design/trust-tiers.md安装信任分级设计文档
src/api/formula、cask、搜索等 API 客户端源码(Zig)
src/extract/原生 tar 解析,无外部依赖
CHANGELOG.md版本历史

八、总结

nanobrew 证明了包管理器完全可以脱离解释器时代:1.2 MB 的 Zig 静态二进制、并行下载、内容寻址缓存加 APFS 克隆,换来的是 3ms 级的热安装与零 Ruby 依赖。它不是 Homebrew 的分叉,而是同一生态的极速客户端——同样的 formula、bottle 和 cask,一条nb migrate即可无缝切换。如果你受够了brew update的漫长等待,不妨今天就试试这个终极替代。

【免费下载链接】nanobrew

The fastest macOS package manager. Written in Zig. 3ms warm installs.

项目地址:https://gitcode.com/gh_mirrors/na/nanobrew
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询