Migrando de GNU Stow a Chezmoi
Chezmoi vs GNU Stow y enfoques simples con enlaces simbólicos
- Varios usuarios informan haber rebotado varias veces con Stow, pero haberse “quedado” con Chezmoi, citando una mejor UX en copia/sincronización y templating, a pesar de algunos bordes ásperos y cierta hinchazón de funcionalidades.
- Otros consideran que Stow está bien para
/usr/localo software compilado, pero que es un apaño para dotfiles. Algunos dejaron Chezmoi y volvieron a Stow o a simples symlinks + scripts, encontrando molesto el flujo de trabajo de Chezmoi (chezmoi edit, pasos de merge). - El templating y el nombrado de archivos en Chezmoi no “encajan” para todo el mundo; a algunos no les gusta que los templates puedan romper el resaltado normal del editor, aunque existen plugins para editores.
- Se elogia Chezmoi por: gestión de permisos, templating multiplataforma,
.chezmoiignorey, especialmente, una integración profunda con gestores de secretos (1Password, Bitwarden,pass, etc.).
Nix, Home Manager y Guix
- Un grupo fuerte argumenta que Nix + Home Manager es el enfoque más completo y reproducible para la “configuración del sistema y del usuario”, no solo para dotfiles. Los beneficios citados: shells de desarrollo temporales, entornos reproducibles, menos herramientas ad hoc, empaquetado de software personalizado e incluso la configuración de máquinas NixOS completas.
- Otros consideran que la documentación de Nix está fragmentada y desactualizada, y dicen que la complejidad aparece al desviarse de los casos comunes. Algunos mencionan paquetes de Nix con errores o abandonados.
- Varios describen el uso de herramientas de IA para generar configs de Nix, afirmando que esto elimina gran parte del dolor de aprendizaje.
- Los críticos señalan: Nix no funciona en Windows, parece demasiado complicado solo para dotfiles, y pierde gran parte de su valor si no puede controlar todo el entorno (por ejemplo, en configuraciones corporativas de macOS).
- Se menciona Guix como similar, pero limitado por la falta de soporte para macOS.
Otras estrategias y herramientas para dotfiles
- Alternativas populares: yadm (centrado en Git, abstracción mínima), rcm, Janus (más ligero y parecido a Chezmoi), funciones de bootstrap de mise, Ansible, simples Makefiles y scripts shell a medida.
- Muchos usuarios prefieren “repo Git + symlinks + pequeño script”, valorando la transparencia, la portabilidad y la ausencia total de dependencias externas. Algunos ejecutan sincronización continua (por ejemplo, con Syncthing) o sincronizan directorios completos de home con rsync y convenciones sobre qué lado es el autoritativo.
- Las opiniones sobre los symlinks están divididas: algunos no quieren que las ediciones vayan directamente al repo y provoquen conflictos entre máquinas; otros lo ven como una ventaja, ya que Git muestra los cambios directamente.
- Gestionar variaciones por máquina o por sistema operativo es un punto de dolor clave: se aborda mediante ramas, directorios específicos por host, lógica condicional de shell o templating (Chezmoi, Nix o herramientas personalizadas).