Nix 安装
nix-openclaw 是 OpenClaw 的官方 Home Manager 模块,提供完全声明式的安装与配置体验。
适用人群
本安装方式面向已经在使用 Nix / NixOS / nix-darwin 的用户。如果你不熟悉 Nix,建议使用 一键安装脚本。
快速开始
最快的方式:把以下 Prompt 粘贴给你的 AI 助手,让它帮你完成配置:
请帮我在 Home Manager 配置中添加 nix-openclaw 模块。
我使用的是 [nix-darwin / NixOS / standalone Home Manager]。
请生成完整的 flake.nix 配置。或者手动操作:
1. 在 flake.nix 中添加 Input
nix
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
home-manager.url = "github:nix-community/home-manager";
nix-openclaw.url = "github:openclaw/nix-openclaw";
};
}2. 在 Home Manager 配置中启用模块
nix
{ inputs, ... }: {
imports = [ inputs.nix-openclaw.homeManagerModules.default ];
programs.openclaw = {
enable = true;
package = inputs.nix-openclaw.packages.${system}.default;
settings = {
# 你的 OpenClaw 配置
log_level = "info";
};
};
# macOS 用户:启用 launchd 服务
services.openclaw = {
enable = true;
autoStart = true;
};
}3. 应用配置
bash
# Home Manager standalone
home-manager switch --flake .
# nix-darwin
darwin-rebuild switch --flake .
# NixOS
sudo nixos-rebuild switch --flake .你会获得什么
| 组件 | 说明 |
|---|---|
| OpenClaw Gateway | 核心网关服务 |
| macOS App(仅 darwin) | 菜单栏应用,快速访问控制台 |
| CLI 工具 | openclaw 命令行 |
| launchd / systemd 服务 | 开机自启,由 Home Manager 管理 |
| Plugin 系统 | 声明式插件安装 |
| 一键回滚 | home-manager generations + switch |
Nix Mode 运行时行为
当通过 Nix 安装时,OpenClaw 会自动设置环境变量 OPENCLAW_NIX_MODE=1,启用以下行为:
配置与状态路径
| 路径 | 说明 |
|---|---|
~/.config/openclaw/ | 配置文件(由 Home Manager 管理) |
~/.local/share/openclaw/ | 运行时状态、数据库、日志 |
~/.local/state/openclaw/ | 临时状态 |
运行时行为差异
- 自动更新已禁用:版本由 Nix 锁文件控制,不会自动拉取新版本
- 插件通过 Nix 管理:声明在
programs.openclaw.plugins中,而非手动安装 - 回滚:通过
home-manager generations查看历史版本,随时切回
打包说明
nix-openclaw 会在构建阶段:
- 从 npm registry 拉取
openclaw包 - 使用
buildNpmPackage构建原生依赖(如sharp) - 将产物链接到 Nix Store(
/nix/store/...) - 生成 wrapper 脚本,注入正确的
NODE_PATH
因此 不需要 全局安装 Node.js 或 npm。
🇨🇳 中国用户须知
Nix 默认从 cache.nixos.org 拉取缓存,国内速度可能较慢。可配置国内镜像:
nix
# 在 /etc/nix/nix.conf 或 ~/.config/nix/nix.conf 中添加
substituters = https://mirrors.tuna.tsinghua.edu.cn/nix-channels/store https://cache.nixos.org
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=