This is my latest dotfiles generation.
I've been experimenting with many different tools to manage them properly, from Ansible to shell scripts, and never liked any of them that much, to be honest.
You can see the history on these repositories:
This is my most recent attempt, using nix.
It contains home-manager, nixOS and nix-darwin configuration for several machines and VMs I use.
To apply updates, simply run:
nix develop .#default --command dot-apply
nix develop .#default --command dot-sync
nix-collect-garbage -d
To create a release, run:
nix develop .#default --command dot-release