Better dotfiles deployment with Yet Another Dotfiles Manager

Published in Productivity on Sep 17, 2021

Keeping your computer settings and your favorite apps 'n scripts in one place is really easy with your own dotfiles collection. Store them in a Github repository and your personal preferences are safe and sound.

Dotfiles need maintenance

There is just one thing I find really difficult: maintaining those files. When I come across a setting or a useful script, I usually try it out, see if it sticks, and after a while it becomes part of my trusted toolkit. At which point I don't take the time to update my dotfiles. I don't touch them for a couple of months - and when I need them, they're incomplete.

Maintenance simplified

The solution for me was Yet Another Dotfiles Manager (YADM):

  • It syncs my local dotfiles with my Github repository by providing the yadm CLI command.
  • It provides a way to bootstrap script files in the repo when they're deployed for the first time.
  • It is available on both Linux and the Mac.
  • Bonus: it can be easily installed through APT and Brew!

On a fresh Linux Box, I can simply enter:

$ sudo apt-get install -y yadm && yadm clone https://github.com/thijskok/dotfiles.git

This will install YADM, clone my dotfiles, configure my personal preferences and install all the apps and scripts I need. This includes setting up my VimRC, installing its plugins and installing its dependencies, for example.

When I change one of my dotfiles, I can just type:

yadm commit -a -m "Message" && yadm push

Which will update my repository. Maintenance has suddenly become a breeze 😀.