HeadlinesBriefing favicon HeadlinesBriefing.com

From Proxmox to NixOS: Why One Developer Ditched VM Management for Declarative Infrastructure

Hacker News •
×

A homelab operator has decommissioned their Proxmox cluster after migrating to NixOS running Incus for container and VM management. After years of using Proxmox for virtualization and ZFS, the author made the switch driven by frustrations with GUI-driven workflows and state drift issues that proved problematic for automated system management.

The conversion began with skepticism toward Nix's syntax and philosophy. Initial adoption was limited to nix-darwin for macOS package management. A turning point came when NVIDIA driver problems on a gaming PC created an unrecoverable boot loop, prompting the move to NixOS. The declarative approach delivered on its promise: migrating the system to new hardware required only applying the configuration to a fresh install, with identical results.

Proxmox's GUI-first design creates operational friction for AI-assisted workflows. Button-clicking interfaces and opaque databases prevent agents from making reliable, reproducible changes. When AI executes imperative commands to fix issues, it leaves systems in undefined states that neither humans nor agents can fully understand. Declarative systems solve this by making infrastructure changes text-based and verifiable.

Incus bridges the gap for stateful workloads that lack pure Nix solutions. The LXD fork provides mature VM and container management while maintaining CLI compatibility with agentic workflows. The author successfully migrated legacy services including Home Assistant to Incus VMs, creating virtual replicas of physical machines for testing before decommissioning the last Proxmox host.