Instalacao via Nix
A forma recomendada de executar o OpenClaw com Nix e via nix-openclaw — um modulo Home Manager completo.
Inicio Rapido
Cole isso para seu agente IA (Claude, Cursor, etc.):
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, model provider API 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.
📦 Guia completo: github.com/openclaw/nix-openclaw
O repositorio nix-openclaw e a referencia para a instalacao via Nix. Esta pagina e apenas uma visao geral rapida.
O que voce recebe
- Gateway + app macOS + ferramentas (whisper, spotify, cameras) — tudo pinado
- Servico launchd que sobrevive a reinicializacoes
- Sistema de plugins com configuracao declarativa
- Rollback instantaneo:
home-manager switch --rollback
Comportamento do runtime em modo Nix
Quando OPENCLAW_NIX_MODE=1 esta definido (automatico com nix-openclaw):
O OpenClaw suporta um modo Nix que torna a configuracao deterministica e desabilita fluxos de auto-instalacao. Ative exportando:
OPENCLAW_NIX_MODE=1
No macOS, o app grafico nao herda automaticamente variaveis de ambiente do shell. Voce tambem pode ativar o modo Nix via defaults:
defaults write ai.openclaw.mac openclaw.nixMode -bool true
Caminhos de configuracao e estado
O OpenClaw le a configuracao JSON5 de OPENCLAW_CONFIG_PATH e armazena dados mutaveis em OPENCLAW_STATE_DIR.
Quando necessario, voce tambem pode definir OPENCLAW_HOME para controlar o diretorio base usado para resolucao de caminhos internos.
OPENCLAW_HOME(precedencia padrao:HOME/USERPROFILE/os.homedir())OPENCLAW_STATE_DIR(padrao:~/.openclaw)OPENCLAW_CONFIG_PATH(padrao:$OPENCLAW_STATE_DIR/openclaw.json)
Ao executar sob Nix, defina-os explicitamente para localizacoes gerenciadas pelo Nix para que o estado de runtime e a configuracao fiquem fora do store imutavel.
Comportamento de runtime no modo Nix
- Fluxos de auto-instalacao e auto-mutacao sao desabilitados
- Dependencias ausentes mostram mensagens de remediacao especificas do Nix
- A interface mostra um banner de modo Nix somente-leitura quando presente
Nota sobre empacotamento (macOS)
O fluxo de empacotamento macOS espera um template Info.plist estavel em:
apps/macos/Sources/OpenClaw/Resources/Info.plist
scripts/package-mac-app.sh copia este template para o bundle do app e aplica patches nos campos dinamicos
(bundle ID, versao/build, Git SHA, chaves Sparkle). Isso mantem o plist deterministico para empacotamento SwiftPM
e builds Nix (que nao dependem de uma toolchain Xcode completa).
Relacionados
- nix-openclaw — guia de configuracao completo
- Assistente — configuracao CLI nao-Nix
- Docker — configuracao containerizada