For a number of years I’ve been using a home grown bash script to manage my shell and dotfiles. It was just enough to do the job, but it was never anything great ( not sure I’d even call it good ).
As 2019 was coming to a close, I started looking at alternatives to my ugly shell script. There are several options out there, and the one I have settled on is yadm.
There are two features that have made using yadm a happy experience. First, it is basically a wrapper for Git. If you’ve used Git, then using yadm will immediately feel familiar. Second, the built in alternate files support. I’ve only used it for separate Linux and Mac OS binaries, but that by itself makes the feature worth while.