Right! Recursive is implied by -a
Yep. There’s a single ./install
script in project root that calls install-cfg
and install-plugins
. I only really need to run it once (first time I set up on a machine), and every time I add a new file. If all I’ve done is update existing files, a simple git pull
will update my dotfiles’ content automatically, as everything is symlinked already.
Worth noting that this is GNU-specific! For macOS for example, you’d have to install GNU userland (e.g. from homebrew) to get the flag. There’s still value in using other solutions (such as
ln
), portability-wise.As an aside: I mostly think of the
ln
param orders as exactly the same ascp
andmv
:cp FROM TO mv FROM TO ln [-s] FROM TO
Maybe that could help!