版本都钉住
像配方卡上写死“要哪一包材料”,不会今天明天忽然换口味。
Install 导读
nix-openclaw 是一个 Home Manager 模块,帮你一次性装好 Gateway、macOS 应用、whisper、spotify 等工具,全部版本锁定。先拿 Determinate Nix 装好 Nix,再复制模板 flake,填上 bot token 和 API key,最后 home-manager switch 就能跑起来。注意:Nix 模式下自动安装和自更新会被禁用,macOS GUI 需要额外执行 defaults write 才能继承环境变量。
先讲这一页到底在解决什么
nix-openclaw 是一个 Home Manager 模块,帮你一次性装好 Gateway、macOS 应用、whisper、spotify 等工具,全部版本锁定。先拿 Determinate Nix 装好 Nix,再复制模板 flake,填上 bot token 和 API key,最后 home-manager switch 就能跑起来。注意:Nix 模式下自动安装和自更新会被禁用,macOS GUI 需要额外执行 defaults write 才能继承环境变量。
第一站
官方列的优势,都可以翻成很具体的画面。
像配方卡上写死“要哪一包材料”,不会今天明天忽然换口味。
home-manager switch --rollback像料理翻车时能直接退回上一次能吃的版本。
不只是装本体,连周边工具和规则也能写进配方卡。
Nix 路线主打“照方抓药”,不是“现场边装边想”。
第二站
把流程压成人话以后很直白。
像先把这整套声明式厨房搭起来,不然配方卡没有地方执行。
像把官方 agent-first 配方卡抄到你自己的厨房笔记本里。
像把 bot token 和模型 API key 放进专门的秘密抽屉里。
home-manager switch像让厨房照配方卡一次把菜全部摆上桌。
第三站
这就是自动安装、自我修改被关掉的原因。
OPENCLAW_NIX_MODE=1像给 OpenClaw 贴一张标签:“你现在住在严格配方厨房里,别自己乱买材料。”
程序不会再自作主张帮你装依赖,因为这会破坏配方的一致性。
GUI app 不会天然继承你 shell 里的环境变量,所以要用 defaults write 单独告诉它。
Nix mode 就是在说:以后按配方来,不准临场加料。
第四站
这也是 Nix 路线容易误会的地方。
OPENCLAW_CONFIG_PATH像告诉 OpenClaw:“你该去哪里读那张声明式配方卡。”
OPENCLAW_STATE_DIR像日常生活抽屉,运行时会变的状态还是得住这里,不能塞进不可变仓库。
Nix 这页的精髓是:配方要固定,生活抽屉要留出来。