GNU Stow
Never lose your system config again.
The Transition from Ansible to GNU Stow
In a previous post, I described my approach to managing my system by treating configuration as code.
Initially, I used Ansible for everything provisioning, application installation, and dotfile management. While that worked, it eventually became clear that Ansible was the wrong tool for managing frequently changing configuration files.
Ansible is excellent for provisioning: installing the OS, packages, system dependencies, and enforcing machine state. But dotfiles are different. They are iterative, experimental, and change often. Updating a complex playbook just to tweak a .zshrc alias introduced unnecessary friction.