Containers
Nix
Instal OpenClaw secara deklaratif dengan nix-openclaw, modul Home Manager resmi dengan semua komponen yang diperlukan.
Yang Anda dapatkan
- Gateway + aplikasi macOS + alat (whisper, spotify, kamera), semuanya dikunci ke versi tertentu
- Layanan launchd yang tetap berjalan setelah sistem dimulai ulang
- Sistem Plugin dengan konfigurasi deklaratif
- Pengembalian instan:
home-manager switch --rollback
Mulai cepat
Instal Determinate Nix
Jika Nix belum terinstal, ikuti petunjuk penginstal Determinate Nix.
Buat flake lokal
Gunakan templat yang mengutamakan agen dari repositori nix-openclaw:
mkdir -p ~/code/openclaw-local# Salin templates/agent-first/flake.nix dari repositori nix-openclawKonfigurasikan rahasia
Siapkan token bot perpesanan dan kunci API penyedia model Anda. Berkas biasa di ~/.secrets/ dapat digunakan.
Isi placeholder templat dan terapkan
home-manager switchVerifikasi
Pastikan layanan launchd berjalan dan bot Anda merespons pesan.
Lihat README nix-openclaw untuk opsi dan contoh modul lengkap.
Perilaku runtime mode Nix
Saat OPENCLAW_NIX_MODE=1 ditetapkan (otomatis dengan nix-openclaw), OpenClaw memasuki mode deterministik untuk instalasi yang dikelola Nix. Paket Nix lainnya dapat menetapkan mode yang sama; nix-openclaw adalah acuan resmi.
Anda juga dapat menetapkannya secara manual:
export OPENCLAW_NIX_MODE=1Di macOS, aplikasi GUI tidak mewarisi variabel lingkungan shell. Aktifkan mode Nix melalui defaults sebagai gantinya:
defaults write ai.openclaw.mac openclaw.nixMode -bool truePerubahan dalam mode Nix
- Alur instalasi otomatis dan modifikasi mandiri dinonaktifkan.
openclaw.jsondiperlakukan sebagai berkas yang tidak dapat diubah. Nilai default yang diturunkan saat startup hanya berlaku saat runtime, dan penulis konfigurasi (penyiapan, orientasi awal,openclaw updateyang melakukan perubahan, instalasi/pembaruan/penghapusan/pengaktifan Plugin,doctor --fix,doctor --generate-gateway-token,openclaw config set) tidak akan mengedit berkas tersebut.- Edit sumber Nix sebagai gantinya. Untuk nix-openclaw, gunakan Mulai Cepat yang mengutamakan agen dan tetapkan konfigurasi di
programs.openclaw.configatauinstances.<name>.config. - Dependensi yang tidak tersedia akan menampilkan pesan perbaikan khusus Nix.
- UI menampilkan banner mode Nix hanya-baca.
Jalur konfigurasi dan status
OpenClaw membaca konfigurasi JSON5 dari OPENCLAW_CONFIG_PATH dan menyimpan data yang dapat diubah di OPENCLAW_STATE_DIR. Di bawah Nix, tetapkan keduanya secara eksplisit ke lokasi yang dikelola Nix agar status runtime dan konfigurasi tetap berada di luar penyimpanan yang tidak dapat diubah.
| Variabel | Default |
|---|---|
OPENCLAW_HOME |
HOME / USERPROFILE / os.homedir() |
OPENCLAW_STATE_DIR |
~/.openclaw |
OPENCLAW_CONFIG_PATH |
$OPENCLAW_STATE_DIR/openclaw.json |
Penemuan PATH layanan
Layanan gateway launchd/systemd secara otomatis menemukan biner profil Nix sehingga Plugin dan alat yang menjalankan berkas yang dapat dieksekusi hasil instalasi nix melalui shell dapat berfungsi tanpa penyiapan PATH secara manual:
- Saat
NIX_PROFILESditetapkan, setiap entri ditambahkan ke PATH layanan dengan urutan prioritas dari kanan ke kiri (sesuai dengan prioritas shell Nix: yang paling kanan diprioritaskan). - Saat
NIX_PROFILEStidak ditetapkan,~/.nix-profile/binditambahkan sebagai cadangan.
Hal ini berlaku untuk lingkungan layanan launchd macOS dan systemd Linux.