Quick Start
Prerequisites
Section titled “Prerequisites”- Nix installed on your local machine
- SSH key authentication to target machine(s)
- A Nix flake with your NixOS configuration(s)
Panix itself needs no installation: step 3 runs it with nix run. To add it to a flake or use the binary cache, see Installation.
1. Prepare the Remote
Section titled “1. Prepare the Remote”Boot into a NixOS installer, any Linux live ISO, or an already provisioned NixOS system.
2. Create panix.yml
Section titled “2. Create panix.yml”# yaml-language-server: $schema=https://raw.githubusercontent.com/mihakrumpestar/panix/main/gen/panix-schema.yaml
# Minimal config - see /configuration/ for all options
fleet: flakes: my-infra: # url defaults to ".", can be omitted when flake is in current dir installables: nixosConfigurations: workstation: # nixosConfigurations.workstation machines: workstation: # matched against ~/.ssh/config
servers: # multi-machine, build once, copy to both machines: server-eu: # matched against ~/.ssh/config server-us: ssh: # SSH not in ~/.ssh/config → specify here hostname: server-us.example.com
vps: # another single machine machines: my-vps: ssh: hostname: 10.0.0.100 port: 22223. Deploy
Section titled “3. Deploy”nix run github:mihakrumpestar/panix -- deployThis runs the full pipeline:
Inspect → Bootstrap → Build → Transfer → Secrets → Activate
See concepts/phases for what each phase does.
The interactive TUI shows real-time progress for each machine and phase. If a phase fails, press r to retry just the failed phases without restarting.