Nix इंस्टॉलेशन¶
Nix के साथ OpenClaw चलाने का अनुशंसित तरीका nix-openclaw के माध्यम से है — यह एक batteries-included Home Manager मॉड्यूल है।
त्वरित प्रारंभ¶
इसे अपने AI एजेंट (Claude, Cursor, आदि) में पेस्ट करें:
I want to set up nix-openclaw on my Mac.
Repository: github:openclaw/nix-openclaw
What I need you to do:
1. Check if Determinate 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.
📦 पूर्ण मार्गदर्शिका: github.com/openclaw/nix-openclaw
nix-openclaw repo, Nix इंस्टॉलेशन के लिए source of truth है। यह पेज सिर्फ़ एक त्वरित अवलोकन है।
आपको क्या मिलता है¶
- Gateway + macOS ऐप + टूल्स (whisper, spotify, cameras) — सभी पिन किए हुए
- रीबूट के बाद भी चलने वाली Launchd सेवा
- घोषणात्मक विन्यास के साथ प्लगइन सिस्टम
- तत्काल रोलबैक:
home-manager switch --rollback
Nix मोड रनटाइम व्यवहार¶
जब OPENCLAW_NIX_MODE=1 सेट होता है (nix-openclaw के साथ स्वतः):
OpenClaw एक Nix mode सपोर्ट करता है जो कॉन्फ़िगरेशन को deterministic बनाता है और auto-install फ्लो को निष्क्रिय करता है। इसे सक्षम करने के लिए export करें:
OPENCLAW_NIX_MODE=1
macOS पर, GUI ऐप शेल env vars को अपने आप inherit नहीं करता। आप defaults के ज़रिए भी Nix mode सक्षम कर सकते हैं:
defaults write bot.molt.mac openclaw.nixMode -bool true
विन्यास + स्थिति पथ¶
OpenClaw JSON5 विन्यास को OPENCLAW_CONFIG_PATH से पढ़ता है और परिवर्तनीय डेटा को OPENCLAW_STATE_DIR में संग्रहीत करता है।
When needed, you can also set OPENCLAW_HOME to control the base home directory used for internal path resolution.
OPENCLAW_HOME(default precedence:HOME/USERPROFILE/os.homedir())OPENCLAW_STATE_DIR(डिफ़ॉल्ट:~/.openclaw)OPENCLAW_CONFIG_PATH(डिफ़ॉल्ट:$OPENCLAW_STATE_DIR/openclaw.json)
Nix के अंतर्गत चलाते समय, इन्हें Nix-प्रबंधित स्थानों पर स्पष्ट रूप से सेट करें ताकि रनटाइम स्थिति और विन्यास अपरिवर्तनीय स्टोर से बाहर रहें।
Nix मोड में रनटाइम व्यवहार¶
- ऑटो-इंस्टॉल और स्वयं-म्यूटेशन प्रवाह अक्षम होते हैं
- अनुपस्थित निर्भरताएँ Nix-विशिष्ट सुधार संदेशों के साथ दिखाई देती हैं
- UI मौजूद होने पर केवल-पढ़ने योग्य Nix मोड बैनर दिखाता है
पैकेजिंग नोट (macOS)¶
macOS पैकेजिंग प्रवाह एक स्थिर Info.plist टेम्पलेट की अपेक्षा करता है, जो यहाँ स्थित है:
apps/macos/Sources/OpenClaw/Resources/Info.plist
scripts/package-mac-app.sh इस टेम्पलेट को ऐप बंडल में कॉपी करता है और dynamic फ़ील्ड्स को patch करता है
(bundle ID, version/build, Git SHA, Sparkle keys)। यह SwiftPM पैकेजिंग और Nix builds (जो पूर्ण Xcode toolchain पर निर्भर नहीं करते) के लिए plist को deterministic रखता है।
संबंधित¶
- nix-openclaw — पूर्ण सेटअप मार्गदर्शिका
- Wizard — गैर‑Nix CLI सेटअप
- Docker — कंटेनरीकृत सेटअप