Containers

Nix

OpenClaw را به‌صورت اعلانی با nix-openclaw، ماژول رسمی و کامل Home Manager، نصب کنید.

آنچه دریافت می‌کنید

  • Gateway + برنامه macOS + ابزارها (whisper، spotify، دوربین‌ها)، همگی با نسخه‌های تثبیت‌شده
  • سرویس launchd که پس از راه‌اندازی مجدد نیز فعال می‌ماند
  • سامانه Plugin با پیکربندی اعلانی
  • بازگردانی فوری: home-manager switch --rollback

شروع سریع

  • نصب Determinate Nix

    اگر Nix از قبل نصب نشده است، دستورالعمل‌های نصب‌کننده Determinate Nix را دنبال کنید.

  • ایجاد یک flake محلی

    از الگوی عامل‌محور مخزن nix-openclaw استفاده کنید:

    bash
    mkdir -p ~/code/openclaw-local# Copy templates/agent-first/flake.nix from the nix-openclaw repo
  • پیکربندی اسرار

    توکن ربات پیام‌رسان و کلید API ارائه‌دهنده مدل را تنظیم کنید. فایل‌های ساده در ~/.secrets/ کاملاً مناسب‌اند.

  • تکمیل جای‌نگهدارهای الگو و اعمال پیکربندی

    bash
    home-manager switch
  • تأیید

    اطمینان حاصل کنید که سرویس launchd در حال اجرا است و ربات شما به پیام‌ها پاسخ می‌دهد.

  • برای مشاهده همه گزینه‌ها و مثال‌های ماژول، به README مربوط به nix-openclaw مراجعه کنید.

    رفتار زمان اجرا در حالت Nix

    وقتی OPENCLAW_NIX_MODE=1 تنظیم شده باشد (که با nix-openclaw به‌طور خودکار انجام می‌شود)، OpenClaw برای نصب‌های مدیریت‌شده با Nix وارد حالتی قطعی می‌شود. سایر بسته‌های Nix نیز می‌توانند همین حالت را تنظیم کنند؛ nix-openclaw مرجع رسمی است.

    همچنین می‌توانید آن را به‌صورت دستی تنظیم کنید:

    bash
    export OPENCLAW_NIX_MODE=1

    در macOS، برنامه رابط گرافیکی متغیرهای محیطی پوسته را به ارث نمی‌برد. در عوض، حالت Nix را از طریق defaults فعال کنید:

    bash
    defaults write ai.openclaw.mac openclaw.nixMode -bool true

    تغییرات در حالت Nix

    • فرایندهای نصب خودکار و تغییر خودکار غیرفعال می‌شوند.
    • با openclaw.json به‌عنوان فایلی تغییرناپذیر رفتار می‌شود. مقادیر پیش‌فرض استنتاج‌شده هنگام راه‌اندازی فقط در زمان اجرا باقی می‌مانند و ابزارهای نگارش پیکربندی (راه‌اندازی، فرایند آغازین، openclaw update تغییردهنده، نصب/به‌روزرسانی/حذف/فعال‌سازی Plugin، doctor --fix، doctor --generate-gateway-token، openclaw config set) از ویرایش فایل خودداری می‌کنند.
    • به‌جای آن، منبع Nix را ویرایش کنید. برای nix-openclaw، از شروع سریع عامل‌محور استفاده کنید و پیکربندی را در programs.openclaw.config یا instances.<name>.config تنظیم کنید.
    • وابستگی‌های مفقود، پیام‌های رفع مشکل ویژه Nix را نمایش می‌دهند.
    • رابط کاربری یک نوار حالت فقط‌خواندنی Nix نشان می‌دهد.

    مسیرهای پیکربندی و وضعیت

    OpenClaw پیکربندی JSON5 را از OPENCLAW_CONFIG_PATH می‌خواند و داده‌های تغییرپذیر را در OPENCLAW_STATE_DIR ذخیره می‌کند. در Nix، این مسیرها را صراحتاً روی مکان‌های مدیریت‌شده با Nix تنظیم کنید تا وضعیت زمان اجرا و پیکربندی خارج از مخزن تغییرناپذیر باقی بمانند.

    متغیر پیش‌فرض
    OPENCLAW_HOME HOME / USERPROFILE / os.homedir()
    OPENCLAW_STATE_DIR ~/.openclaw
    OPENCLAW_CONFIG_PATH $OPENCLAW_STATE_DIR/openclaw.json

    کشف PATH سرویس

    سرویس Gateway مربوط به launchd/systemd، فایل‌های اجرایی نمایه Nix را به‌طور خودکار کشف می‌کند تا Pluginها و ابزارهایی که فایل‌های اجرایی نصب‌شده با nix را از طریق پوسته اجرا می‌کنند، بدون تنظیم دستی PATH کار کنند:

    • وقتی NIX_PROFILES تنظیم شده باشد، هر ورودی با اولویت از راست به چپ به PATH سرویس افزوده می‌شود (مطابق اولویت پوسته Nix: راست‌ترین مورد برنده است).
    • وقتی NIX_PROFILES تنظیم نشده باشد، ~/.nix-profile/bin به‌عنوان مسیر جایگزین افزوده می‌شود.

    این رفتار هم برای محیط‌های سرویس launchd در macOS و هم systemd در Linux اعمال می‌شود.

    مرتبط

    Was this useful?
    On this page

    On this page