May 26, 2018
GNU version of Carnegie Mellon’s “Depot” program
This is GNU Stow, a program for managing the installation of software packages, keeping them separate /usr/local/stow/emacs vs. /usr/local/stow/perl, for example while making them appear to be installed in the same place /usr/local.
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 directory e.g., /usr/local/stow/emacs, so it’s always possible to rebuild the target tree e.g., /usr/local.