I’m looking for recommendations for a dotfile manager - there are so many out there I’ve got a bit of options paralysis!
I’d like a system that can backup all my dotfiles - with version management - and, if I nuked my home directory, could restore them all for me with a simple command.
Thanks in advance for you suggestions!
a git repository configured to ignore basically everything except the dotfiles. For my sway config I load configs from a symlinked folder, which points to a different config depending on the machine being configured.
Git and a script file that’s basically just a ton of ln - s commands
I honestly don’t think I’ve ever found myself wanting more
I do basically the same, but using GNU Stow instead of doing the ln myself
I did. I wanted more. I wanted
ln -sf
.
git.
In all honesty, I’d just write a bash script, potentially reading from a file listing all the dotfiles you want to back up, copy them into some directory and pushing to a git repo. Run that script on a systemd timer (or manually) and write another script deploying them into the correct locations
That’s basically what dotbot does I think. Can recommend
rsync and rm
lazy git plus gnu stow works great for me
I use chezmoi for mine. I haven’t had to restore after a nuke yet (hopefully not anytime) but its really simple IMO. Its basically a git wrapper, so there you have your version control. You create a dotfiles repo in your GitHub, initialise your home as a local repo and point it there using chezmoi, and then its as simple as typing “chezmoi add myfile” to start tracking the file in the repo. Then I simply do “chezmoi cd” followoed by the standard git commands to commit and push changes to remote.
Check it out, I’m happy working with it across my desktop and laptop (working on the same config files across both pcs).
+1 for chezmoi
It makes syncing my dotfiles between my different systems fairly painless. It just works.
deleted by creator
I used yadm for a while and liked it. It is a git wrapper that makes git’ing your home folder for config files less messy
Now I don’t care so much for keeping settings anymore and use mainly vanilla settings, therefore I stopped using it
Second this, works great for multiple OSs as well, Linux and OSX in the same repo.
ls and nano 💪
I’m extremely happy with chezmoi. It’s very simple to use, but when you need more advanced features, it has them. It can do templates, ignoring and other stuff allowing you to easily manage dotfiles on multiple machines or even multiple operating systems (like windows on PC, Linux on laptop). Here is a comparison table of some dotfiles manager (it’s on chezmoi’s website, so it may be biased) Also here are my dotfiles (as a Linux user, I cannot resist the urge to share my dotfiles whenever I have the opportunity)
Chezmoi user here, love it.
I use a Git repo for the files, and a simple Makefile to script the correct paths and optional install steps for them
I use a bare git repo in
.dotfiles/
that uses the home folder as a working tree, configured the repository to ignore untracked files, and then just add my dotfiles if there’s a change.To setup working dirs I aliased that to
dtf
https://www.atlassian.com/git/tutorials/dotfiles
Same. My alias is
dit
for “dotfile git”.
I’ve used homeshick https://github.com/andsens/homeshick for a few years and it’s been running fine. It can load two git repos, one common public repo and one private one for work config.
I searched so long for a good solution to this. Ended up using stow + git. I’m quite happy with it.
This video shows how it works:
Here is an alternative Piped link(s):
https://piped.video/90xMTKml9O0?si=zsmkoOCgyuiBOlir
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.
Git