Containers
Nix
Installa OpenClaw in modo dichiarativo con nix-openclaw, il modulo Home Manager ufficiale completo di tutto.
Cosa ottieni
- Gateway + app per macOS + strumenti (whisper, spotify, videocamere), tutti con versioni bloccate
- Servizio launchd che rimane attivo dopo i riavvii
- Sistema di Plugin con configurazione dichiarativa
- Ripristino immediato:
home-manager switch --rollback
Avvio rapido
Installa Determinate Nix
Se Nix non è già installato, segui le istruzioni del programma di installazione di Determinate Nix.
Crea un flake locale
Usa il modello orientato agli agenti dal repository nix-openclaw:
mkdir -p ~/code/openclaw-local# Copia templates/agent-first/flake.nix dal repository nix-openclawConfigura i segreti
Configura il token del bot di messaggistica e la chiave API del provider del modello. I normali file in ~/.secrets/ vanno bene.
Compila i segnaposto del modello e applica la configurazione
home-manager switchVerifica
Verifica che il servizio launchd sia in esecuzione e che il bot risponda ai messaggi.
Consulta il README di nix-openclaw per tutte le opzioni del modulo e gli esempi.
Comportamento di runtime in modalità Nix
Quando è impostato OPENCLAW_NIX_MODE=1 (automaticamente con nix-openclaw), OpenClaw entra in una modalità deterministica per le installazioni gestite da Nix. Anche altri pacchetti Nix possono impostare la stessa modalità; nix-openclaw è l'implementazione ufficiale di riferimento.
Puoi anche impostarla manualmente:
export OPENCLAW_NIX_MODE=1Su macOS, l'app con interfaccia grafica non eredita le variabili d'ambiente della shell. Abilita invece la modalità Nix tramite defaults:
defaults write ai.openclaw.mac openclaw.nixMode -bool trueCosa cambia in modalità Nix
- I flussi di installazione automatica e automodifica sono disabilitati.
openclaw.jsonè considerato immutabile. I valori predefiniti derivati all'avvio rimangono disponibili solo durante l'esecuzione e gli strumenti che modificano la configurazione (configurazione iniziale, procedura guidata iniziale,openclaw updatecon modifiche, installazione/aggiornamento/disinstallazione/abilitazione dei Plugin,doctor --fix,doctor --generate-gateway-token,openclaw config set) si rifiutano di modificare il file.- Modifica invece il sorgente Nix. Per nix-openclaw, usa l'Avvio rapido orientato agli agenti e imposta la configurazione in
programs.openclaw.configoinstances.<name>.config. - Le dipendenze mancanti mostrano messaggi di risoluzione specifici per Nix.
- L'interfaccia utente mostra un banner di modalità Nix in sola lettura.
Percorsi di configurazione e stato
OpenClaw legge la configurazione JSON5 da OPENCLAW_CONFIG_PATH e archivia i dati modificabili in OPENCLAW_STATE_DIR. Con Nix, impostali esplicitamente su percorsi gestiti da Nix, in modo che lo stato di runtime e la configurazione restino fuori dall'archivio immutabile.
| Variabile | Valore predefinito |
|---|---|
OPENCLAW_HOME |
HOME / USERPROFILE / os.homedir() |
OPENCLAW_STATE_DIR |
~/.openclaw |
OPENCLAW_CONFIG_PATH |
$OPENCLAW_STATE_DIR/openclaw.json |
Rilevamento del PATH del servizio
Il servizio Gateway launchd/systemd rileva automaticamente i binari dei profili Nix, in modo che i Plugin e gli strumenti che eseguono gli eseguibili installati tramite nix funzionino senza configurare manualmente il PATH:
- Quando
NIX_PROFILESè impostata, ogni voce viene aggiunta al PATH del servizio con precedenza da destra verso sinistra (come la precedenza della shell Nix: vince la voce più a destra). - Quando
NIX_PROFILESnon è impostata,~/.nix-profile/binviene aggiunto come percorso di riserva.
Questo vale sia per gli ambienti dei servizi launchd su macOS sia per quelli systemd su Linux.
Contenuti correlati
Modulo Home Manager autorevole e guida completa alla configurazione.
Guida dettagliata alla configurazione tramite CLI senza Nix.
Configurazione in container come alternativa senza Nix.
Aggiornamento delle installazioni gestite da Home Manager insieme al pacchetto.