I am looking for a better way to manage and sync my dotfiles between machines. Some options I am looking at include dropdot, or a bare git repo, or GNU stow. Currently, some of the machines have some dotfiles symlinked to git repos, and others are unmanaged.
What do you guys use for managing dotfiles? Any suggestions?
This way, I can always blow away my home directory and revert or restore in a repeatable way when I reinstall or add a new machine.
I keep different sets of configurations in different repos. I need different configurations for different machines, and only clone the repos needed for that machine.
I do something similar but I have an install script that gives me a little more fine grain control. Although I probably need to just move everything into my .config directory and be done with it…
If you just care for backup and restore have a look at timeshift. It can backup your root installation and dotfiles in your home easily using rsync in the background. It can also do scheduled backups and you get safety bonus points if you use the package timeshift-autosnap which does backups before every system upgrade and package installation.
I probably need to just move everything into my .config directory and be done with it…
My scripts do more than that, using .config was just an example of moving the checked out files into place.
You’ll miss a lot of settings only doing .config, as that seems to be a newer convention. Notable things that would be missed are Xorg settings, Firefox, and Thunderbird.
As far as I can tell Git is still lacking some of the features that make this really convenient with Subversion. Come to think of it this also probably is one of the few valid uses for externals…
I just store my dotfiles in Nextcloud instance and have symlinks to them. Very much like git, also has versioning, but is a lot more versatile for other things and I already used it every day, made sense not to create another thing to manage in my life.
To update the thread, I am trying out chezmoi, which I picked over other tools because it has built in support to store passwords in Bitwarden, and because it has windows support.