Containers
Nix
Installez OpenClaw de manière déclarative avec nix-openclaw, le module Home Manager officiel prêt à l’emploi.
Ce que vous obtenez
- Gateway + application macOS + outils (whisper, spotify, caméras), tous épinglés
- Service launchd persistant après les redémarrages
- Système de Plugins avec configuration déclarative
- Restauration instantanée :
home-manager switch --rollback
Démarrage rapide
Installer Determinate Nix
Si Nix n’est pas déjà installé, suivez les instructions du programme d’installation de Determinate Nix.
Créer un flake local
Utilisez le modèle axé sur les agents du dépôt nix-openclaw :
mkdir -p ~/code/openclaw-local# Copier templates/agent-first/flake.nix depuis le dépôt nix-openclawConfigurer les secrets
Configurez le jeton de votre bot de messagerie et la clé d’API du fournisseur de modèles. De simples fichiers dans ~/.secrets/ conviennent parfaitement.
Renseigner les espaces réservés du modèle et appliquer la configuration
home-manager switchVérifier
Vérifiez que le service launchd est actif et que votre bot répond aux messages.
Consultez le README de nix-openclaw pour découvrir toutes les options du module et des exemples.
Comportement d’exécution en mode Nix
Lorsque OPENCLAW_NIX_MODE=1 est défini (automatiquement avec nix-openclaw), OpenClaw passe en mode déterministe pour les installations gérées par Nix. D’autres paquets Nix peuvent définir le même mode ; nix-openclaw est l’implémentation de référence officielle.
Vous pouvez également le définir manuellement :
export OPENCLAW_NIX_MODE=1Sous macOS, l’application graphique n’hérite pas des variables d’environnement de l’interpréteur de commandes. Activez plutôt le mode Nix avec defaults :
defaults write ai.openclaw.mac openclaw.nixMode -bool trueChangements apportés par le mode Nix
- Les processus d’installation automatique et d’auto-modification sont désactivés.
openclaw.jsonest considéré comme immuable. Les valeurs par défaut déduites au démarrage restent limitées à l’exécution, et les outils qui écrivent la configuration (configuration initiale, intégration, commandeopenclaw updateavec modification, installation/mise à jour/désinstallation/activation de Plugins,doctor --fix,doctor --generate-gateway-token,openclaw config set) refusent de modifier le fichier.- Modifiez plutôt la source Nix. Pour nix-openclaw, suivez le démarrage rapide axé sur les agents et définissez la configuration sous
programs.openclaw.configouinstances.<name>.config. - Les dépendances manquantes déclenchent des messages de résolution propres à Nix.
- L’interface affiche une bannière indiquant que le mode Nix est en lecture seule.
Chemins de configuration et d’état
OpenClaw lit la configuration JSON5 depuis OPENCLAW_CONFIG_PATH et stocke les données modifiables dans OPENCLAW_STATE_DIR. Sous Nix, définissez-les explicitement sur des emplacements gérés par Nix afin que l’état d’exécution et la configuration restent en dehors du magasin immuable.
| Variable | Valeur par défaut |
|---|---|
OPENCLAW_HOME |
HOME / USERPROFILE / os.homedir() |
OPENCLAW_STATE_DIR |
~/.openclaw |
OPENCLAW_CONFIG_PATH |
$OPENCLAW_STATE_DIR/openclaw.json |
Détection du PATH du service
Le service Gateway launchd/systemd détecte automatiquement les exécutables des profils Nix afin que les Plugins et les outils qui lancent des exécutables installés par nix fonctionnent sans configuration manuelle du PATH :
- Lorsque
NIX_PROFILESest défini, chaque entrée est ajoutée au PATH du service selon un ordre de priorité allant de droite à gauche (conforme à la priorité de l’interpréteur de commandes Nix : l’entrée la plus à droite l’emporte). - Lorsque
NIX_PROFILESn’est pas défini,~/.nix-profile/binest ajouté comme solution de repli.
Cela s’applique aux environnements de service launchd sous macOS et systemd sous Linux.
Pages connexes
Module Home Manager de référence et guide de configuration complet.
Guide de configuration avec la CLI sans Nix.
Configuration conteneurisée comme alternative à Nix.
Mise à jour des installations gérées par Home Manager conjointement avec le paquet.