> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Nix

Установите OpenClaw декларативно с помощью **[nix-openclaw](https://github.com/openclaw/nix-openclaw)** — официального полнофункционального модуля Home Manager.

> [!NOTE]
>
> Репозиторий [nix-openclaw](https://github.com/openclaw/nix-openclaw) — основной источник сведений об установке через Nix. На этой странице приведён краткий обзор.

## Что вы получите

* Gateway + приложение для macOS + инструменты (whisper, spotify, камеры), все версии зафиксированы
* Служба launchd, продолжающая работать после перезагрузки
* Система плагинов с декларативной конфигурацией
* Мгновенный откат: `home-manager switch --rollback`

## Быстрый старт

**1. Установите Determinate Nix**

Если Nix ещё не установлен, следуйте инструкциям [установщика Determinate Nix](https://github.com/DeterminateSystems/nix-installer).

**2. Создайте локальный flake**

Используйте шаблон с приоритетом агента из репозитория nix-openclaw:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
mkdir -p ~/code/openclaw-local
# Скопируйте templates/agent-first/flake.nix из репозитория nix-openclaw
```

**3. Настройте секреты**

Укажите токен бота для обмена сообщениями и API-ключ поставщика моделей. Обычные файлы в `~/.secrets/` вполне подходят.

**4. Заполните заполнители шаблона и примените конфигурацию**

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
home-manager switch
```

**5. Проверьте**

Убедитесь, что служба launchd работает, а бот отвечает на сообщения.

Полный список параметров модуля и примеры см. в [README nix-openclaw](https://github.com/openclaw/nix-openclaw).

## Поведение среды выполнения в режиме Nix

Когда задано `OPENCLAW_NIX_MODE=1` (при использовании nix-openclaw это происходит автоматически), OpenClaw переходит в детерминированный режим для установок под управлением Nix. Другие пакеты Nix также могут включать этот режим; nix-openclaw является официальной эталонной реализацией.

Его также можно включить вручную:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
export OPENCLAW_NIX_MODE=1
```

В macOS приложение с графическим интерфейсом не наследует переменные окружения оболочки. Вместо этого включите режим Nix с помощью `defaults`:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
defaults write ai.openclaw.mac openclaw.nixMode -bool true
```

### Что меняется в режиме Nix

* Механизмы автоматической установки и самоизменения отключены.
* `openclaw.json` считается неизменяемым. Значения по умолчанию, определяемые при запуске, применяются только во время выполнения, а средства записи конфигурации (первоначальная настройка, ввод в эксплуатацию, изменяющие операции `openclaw update`, установка, обновление, удаление и включение плагинов, `doctor --fix`, `doctor --generate-gateway-token`, `openclaw config set`) отказываются изменять файл.
* Вместо этого измените исходный код Nix. Для nix-openclaw используйте ориентированный на агента раздел [«Быстрый старт»](https://github.com/openclaw/nix-openclaw#quick-start) и задайте конфигурацию в `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, поэтому плагины и инструменты, запускающие исполняемые файлы, установленные через `nix`, работают без ручной настройки PATH:

* Когда задано `NIX_PROFILES`, каждая запись добавляется в PATH службы с приоритетом справа налево (как в оболочке Nix: побеждает крайняя справа).
* Если `NIX_PROFILES` не задано, в качестве резервного варианта добавляется `~/.nix-profile/bin`.

Это относится как к окружению службы launchd в macOS, так и к окружению службы systemd в Linux.

## Связанные материалы

> [card] [nix-openclaw](https://github.com/openclaw/nix-openclaw)
>
> Основной модуль Home Manager и полное руководство по настройке.

> [card] [Мастер настройки](https://docs2.openclaw.ai/ru/start/wizard.md)
>
> Пошаговая настройка через CLI без использования Nix.

> [card] [Docker](https://docs2.openclaw.ai/ru/install/docker.md)
>
> Контейнерная установка как альтернатива Nix.

> [card] [Обновление](https://docs2.openclaw.ai/ru/install/updating.md)
>
> Обновление установок под управлением Home Manager вместе с пакетом.
