LINKUP: Simple symlink farmer
Last modification on
Motivation
Keeping scripts and application
dotfiles
up-to-date between machines can be a real hassle.
To deal with this, I version my config files using git, and install
them in the right place using this tool (linkup).
GNU Stow is a viable alternative, but
more complex than I deemed necessary and dependent on perl.
Features
The program fits inside a single, small C file (~230 LOC).
It supports two modes of operation, install and uninstall, both taking
SRC and DST arguments.
During install, symlinks for files in SRC are created in DST, and
dangling symlinks in DST that point into SRC are removed. If a path
already exists in DST, it is only replaced if it is a symlink or -f
was specified to force the operation.
During uninstall, all symlinks in DST pointing into SRC are removed.
The source code is available at: https://git.sinitax.com/sinitax/linkup