Nix-Installation
Die empfohlene Art, OpenClaw mit Nix zu betreiben, ist nix-openclaw — ein Home-Manager-Modul mit allem dabei.
Schnellstart
Diesen Text in deinen KI-Agenten (Claude, Cursor usw.) einfügen:
I want to set up nix-openclaw on my Mac.
Repository: github:openclaw/nix-openclaw
What I need you to do:
1. Check if DeStop Nix is installed (if not, install it)
2. Create a local flake at ~/code/openclaw-local using templates/agent-first/flake.nix
3. Help me create a Telegram bot (@BotFather) and get my chat ID (@userinfobot)
4. Set up secrets (bot token, Anthropic key) - plain files at ~/.secrets/ is fine
5. Fill in the template placeholders and run home-manager switch
6. Verify: launchd running, bot responds to messages
Reference the nix-openclaw README for module options.📦 Vollständige Anleitung: github.com/openclaw/nix-openclaw Das nix-openclaw-Repo ist die Referenz für die Nix-Installation. Diese Seite ist nur eine Kurzübersicht.
Was du bekommst
- Gateway + macOS-App + Tools (whisper, spotify, cameras) — alles gepinnt
- Launchd-Service, der Reboots übersteht
- Plugin-System mit deklarativer Config
- Sofortiges Rollback:
home-manager switch --rollback
Nix-Mode-Laufzeitverhalten
Wenn CLAWDBOT_NIX_MODE=1 gesetzt ist (bei nix-openclaw automatisch): OpenClaw unterstützt einen Nix-Modus, der die Konfiguration deterministisch macht und Auto-Install-Abläufe deaktiviert. Aktivieren durch Export:
CLAWDBOT_NIX_MODE=1Unter macOS erbt die GUI-App Umgebungsvariablen der Shell nicht automatisch. Du kannst den Nix-Modus auch per defaults aktivieren:
defaults write bot.molt.mac openclaw.nixMode -bool trueConfig- und State-Pfade
OpenClaw liest JSON5-Config aus CLAWDBOT_CONFIG_PATH und speichert veränderliche Daten in CLAWDBOT_STATE_DIR.
CLAWDBOT_STATE_DIR(Standard:~/.clawdbot)CLAWDBOT_CONFIG_PATH(Standard:$CLAWDBOT_STATE_DIR/openclaw.json)
Unter Nix diese explizit auf Nix-verwaltete Pfade setzen, damit Laufzeit-State und Config außerhalb des immutable Store liegen.
Laufzeitverhalten im Nix-Modus
- Auto-Install und Self-Mutation sind deaktiviert
- Fehlende Abhängigkeiten zeigen Nix-spezifische Hinweise
- Die UI zeigt ein nur-lesbares Nix-Mode-Banner, wenn aktiv
Packaging-Hinweis (macOS)
Der macOS-Packaging-Ablauf erwartet eine stabile Info.plist-Vorlage unter:
apps/macos/Sources/OpenClaw/Resources/Info.plistscripts/package-mac-app.sh kopiert diese Vorlage ins App-Bundle und patcht dynamische Felder (Bundle-ID, Version/Build, Git-SHA, Sparkle-Keys). So bleibt die plist für SwiftPM-Packaging und Nix-Builds deterministisch (ohne vollständige Xcode-Toolchain).
Verwandte Themen
- nix-openclaw — vollständige Setup-Anleitung
- Wizard — CLI-Setup ohne Nix
- Docker — containerisiertes Setup