Containers
Nix
Instale o OpenClaw declarativamente com o nix-openclaw, o módulo oficial e completo do Home Manager.
O que você obtém
- Gateway + aplicativo para macOS + ferramentas (whisper, spotify, câmeras), todos com versões fixadas
- Serviço launchd que continua funcionando após reinicializações
- Sistema de Plugins com configuração declarativa
- Reversão instantânea:
home-manager switch --rollback
Início rápido
Instalar o Determinate Nix
Se o Nix ainda não estiver instalado, siga as instruções do instalador do Determinate Nix.
Criar um flake local
Use o modelo voltado para agentes do repositório nix-openclaw:
mkdir -p ~/code/openclaw-local# Copie templates/agent-first/flake.nix do repositório nix-openclawConfigurar segredos
Configure o token do bot de mensagens e a chave de API do provedor de modelos. Arquivos simples em ~/.secrets/ funcionam normalmente.
Preencher os espaços reservados do modelo e aplicar
home-manager switchVerificar
Confirme se o serviço launchd está em execução e se o bot responde às mensagens.
Consulte o README do nix-openclaw para ver todas as opções e exemplos do módulo.
Comportamento do ambiente de execução no modo Nix
Quando OPENCLAW_NIX_MODE=1 está definido (automaticamente com o nix-openclaw), o OpenClaw entra em um modo determinístico para instalações gerenciadas pelo Nix. Outros pacotes Nix podem definir o mesmo modo; o nix-openclaw é a referência oficial.
Você também pode defini-lo manualmente:
export OPENCLAW_NIX_MODE=1No macOS, o aplicativo com interface gráfica não herda as variáveis de ambiente do shell. Em vez disso, ative o modo Nix por meio de defaults:
defaults write ai.openclaw.mac openclaw.nixMode -bool trueO que muda no modo Nix
- Os fluxos de instalação automática e automodificação são desativados.
- O arquivo
openclaw.jsoné tratado como imutável. Os padrões derivados durante a inicialização permanecem apenas no ambiente de execução, e os gravadores de configuração (configuração, integração inicial,openclaw updatecom alterações, instalação/atualização/desinstalação/ativação de Plugins,doctor --fix,doctor --generate-gateway-token,openclaw config set) se recusam a editar o arquivo. - Em vez disso, edite o código-fonte Nix. Para o nix-openclaw, use o Início rápido voltado para agentes e defina a configuração em
programs.openclaw.configouinstances.<name>.config. - Dependências ausentes exibem mensagens de correção específicas do Nix.
- A interface exibe um banner de modo Nix somente leitura.
Caminhos de configuração e estado
O OpenClaw lê a configuração JSON5 de OPENCLAW_CONFIG_PATH e armazena dados mutáveis em OPENCLAW_STATE_DIR. No Nix, defina-os explicitamente como locais gerenciados pelo Nix para que o estado do ambiente de execução e a configuração permaneçam fora do armazenamento imutável.
| Variável | Padrão |
|---|---|
OPENCLAW_HOME |
HOME / USERPROFILE / os.homedir() |
OPENCLAW_STATE_DIR |
~/.openclaw |
OPENCLAW_CONFIG_PATH |
$OPENCLAW_STATE_DIR/openclaw.json |
Descoberta do PATH do serviço
O serviço Gateway do launchd/systemd descobre automaticamente os binários dos perfis Nix para que Plugins e ferramentas que executam externamente executáveis instalados pelo nix funcionem sem configuração manual do PATH:
- Quando
NIX_PROFILESestá definido, cada entrada é adicionada ao PATH do serviço com precedência da direita para a esquerda (corresponde à precedência do shell do Nix: a entrada mais à direita prevalece). - Quando
NIX_PROFILESnão está definido,~/.nix-profile/biné adicionado como alternativa.
Isso se aplica aos ambientes de serviço do launchd no macOS e do systemd no Linux.
Relacionados
Módulo oficial do Home Manager e guia completo de configuração.
Guia passo a passo de configuração pela CLI sem Nix.
Configuração em contêiner como alternativa sem Nix.
Atualização de instalações gerenciadas pelo Home Manager junto com o pacote.