README for GNU Stow
This is GNU Stow, a symlink farm manager program which takes distinct
packages of software and/or data located in separate directories on
the filesystem, and makes them appear to be installed in the same
place. For example,
/usr/local/bin could contain symlinks to files
/usr/local/stow/perl/bin etc., and
likewise recursively for any other subdirectories such as
.../man, and so on.
This is particularly useful for keeping track of system-wide and per-user installations of software built from source, but can also facilitate a more controlled approach to management of configuration files in the user's home directory, especially when coupled with version control systems.
Stow is implemented as a combination of a Perl script providing a CLI interface, and a backend Perl module which does most of the work.
You can get the latest information about Stow from the home page:
Stow is free software, licensed under the GNU General Public License,
which can be found in the file
INSTALL.md for installation instructions.
Please do send comments, questions, and constructive criticism. The mailing lists and any other communication channels are detailed on the above home page.
Stow was inspired by Carnegie Mellon's "Depot" program, but is
substantially simpler. Whereas Depot requires database files to keep
things in sync, Stow stores no extra state between runs, so there's no
danger (as there is in Depot) of mangling directories when file
hierarchies don't match the database. Also unlike Depot, Stow will
never delete any files, directories, or links that appear in a Stow
/usr/local/stow/emacs), so it's always possible to
rebuild the target tree (e.g.,