通过 nix-openclaw 声明式安装 OpenClaw,适合已使用 Nix/NixOS/Home Manager 的用户。
优势
- Gateway + macOS app + 工具(whisper、spotify、cameras)全部固定版本
- Launchd service 开机自启
- 声明式插件配置
- 即时回滚:
home-manager switch --rollback
快速开始
# 1. 安装 Determinate Nix(若未安装)
# 参考 https://github.com/DeterminateSystems/nix-installer
# 2. 创建本地 flake
mkdir -p ~/code/openclaw-local
# 从 nix-openclaw repo 复制 templates/agent-first/flake.nix
# 3. 配置 secrets(bot token、model provider API key)
# 存放于 ~/.secrets/ 即可
# 4. 填写模板占位符并切换
home-manager switch
# 5. 验证 launchd service 运行正常Nix 模式运行行为
设置 OPENCLAW_NIX_MODE=1(nix-openclaw 自动设置)后,OpenClaw 进入确定性模式:
- 禁用自动安装和自我变更流程
openclaw.json视为不可变,以下命令拒绝修改配置文件:setup、onboarding、openclaw update、plugin install/update/uninstall、doctor --fix、openclaw config set- 缺少依赖时显示 Nix 专属修复提示
- UI 显示只读 Nix 模式横幅
macOS GUI app 需通过 defaults 启用:
defaults write ai.openclaw.mac openclaw.nixMode -bool true关键环境变量
| 变量 | 默认值 |
|---|---|
OPENCLAW_HOME | HOME / USERPROFILE |
OPENCLAW_STATE_DIR | ~/.openclaw |
OPENCLAW_CONFIG_PATH | $OPENCLAW_STATE_DIR/openclaw.json |
Service PATH 发现
launchd/systemd gateway service 自动发现 Nix profile 二进制:
- 设置
NIX_PROFILES时,每个条目按右到左优先级加入 PATH - 未设置时,回退到
~/.nix-profile/bin
相关链接
- install-docker — Docker 容器化替代方案
- install-updating — 更新 Home Manager 管理的安装