Containers
Nix
Cài đặt OpenClaw theo cách khai báo với nix-openclaw - mô-đun Home Manager chính chủ, đầy đủ sẵn pin.
Bạn nhận được gì
- Gateway + ứng dụng macOS + công cụ (whisper, spotify, cameras) -- tất cả đều được ghim phiên bản
- Dịch vụ launchd tồn tại qua các lần khởi động lại
- Hệ thống Plugin với cấu hình khai báo
- Hoàn tác tức thì:
home-manager switch --rollback
Bắt đầu nhanh
Install Determinate Nix
Nếu Nix chưa được cài đặt, hãy làm theo hướng dẫn của trình cài đặt Determinate Nix.
Create a local flake
Sử dụng mẫu ưu tiên tác nhân từ repo nix-openclaw:
mkdir -p ~/code/openclaw-local
# Copy templates/agent-first/flake.nix from the nix-openclaw repo
Configure secrets
Thiết lập token bot nhắn tin và khóa API của nhà cung cấp mô hình. Các tệp thuần tại ~/.secrets/ hoạt động tốt.
Fill in template placeholders and switch
home-manager switch
Verify
Xác nhận dịch vụ launchd đang chạy và bot của bạn phản hồi tin nhắn.
Xem README nix-openclaw để biết đầy đủ tùy chọn mô-đun và ví dụ.
Hành vi runtime ở chế độ Nix
Khi OPENCLAW_NIX_MODE=1 được đặt (tự động với nix-openclaw), OpenClaw chuyển sang chế độ xác định cho các bản cài đặt do Nix quản lý. Các gói Nix khác có thể đặt cùng chế độ; nix-openclaw là tham chiếu chính chủ.
Bạn cũng có thể đặt thủ công:
export OPENCLAW_NIX_MODE=1
Trên macOS, ứng dụng GUI không tự động kế thừa biến môi trường shell. Thay vào đó, bật chế độ Nix qua defaults:
defaults write ai.openclaw.mac openclaw.nixMode -bool true
Điều gì thay đổi trong chế độ Nix
- Các luồng tự động cài đặt và tự thay đổi bị tắt
openclaw.jsonđược xem là bất biến. Các mặc định sinh ra lúc khởi động chỉ tồn tại trong runtime, và các trình ghi cấu hình như setup, onboarding,openclaw updatecó thay đổi, cài đặt/cập nhật/gỡ cài đặt/bật Plugin,doctor --fix,doctor --generate-gateway-token, vàopenclaw config setsẽ từ chối chỉnh sửa tệp.- Các tác nhân nên chỉnh sửa nguồn Nix thay vào đó. Với nix-openclaw, hãy dùng Bắt đầu nhanh ưu tiên tác nhân và đặt cấu hình dưới
programs.openclaw.confighoặcinstances.<name>.config. - Các phụ thuộc bị thiếu hiển thị thông báo khắc phục dành riêng cho Nix
- UI hiển thị banner chế độ Nix chỉ đọc
Đường dẫn cấu hình và trạng thái
OpenClaw đọc cấu hình JSON5 từ OPENCLAW_CONFIG_PATH và lưu dữ liệu có thể thay đổi trong OPENCLAW_STATE_DIR. Khi chạy dưới Nix, hãy đặt rõ các giá trị này tới vị trí do Nix quản lý để trạng thái runtime và cấu hình không nằm trong kho bất biến.
| Biến | Mặc định |
|---|---|
OPENCLAW_HOME |
HOME / USERPROFILE / os.homedir() |
OPENCLAW_STATE_DIR |
~/.openclaw |
OPENCLAW_CONFIG_PATH |
$OPENCLAW_STATE_DIR/openclaw.json |
Phát hiện PATH của dịch vụ
Dịch vụ gateway launchd/systemd tự động phát hiện các tệp nhị phân trong Nix-profile để
các Plugin và công cụ gọi shell tới các tệp thực thi được cài bằng nix hoạt động mà không cần
thiết lập PATH thủ công:
- Khi
NIX_PROFILESđược đặt, mọi mục nhập được thêm vào PATH của dịch vụ theo thứ tự ưu tiên từ phải sang trái (khớp với mức ưu tiên shell Nix - mục ngoài cùng bên phải thắng). - Khi
NIX_PROFILESchưa được đặt,~/.nix-profile/binđược thêm làm dự phòng.
Điều này áp dụng cho cả môi trường dịch vụ launchd trên macOS và systemd trên Linux.