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