stash is a perl script that aims to make it easier for you to install, track, and maintain packages and modules in your home directory. It performs this magic by detecting what type of package or module you are installing and passing all the right command line arguments to the confgure scripts and/or makefiles.
stash is similar in many ways to GNU stow and stowES.
Here are some key features of "stash":
· Supports two stash directories per machine; an architecture independent one and an architecture dependent one. This makes it possible for stash to work when your home directory is mounted on several boxes of differing platforms.
· Support for autoconf generated configure scripts
· Support for some autoconf look-alike configure scripts
· Support for Imakefiles
· Support for perl Makefile.PL files
· Support for python setup.py files
· Support for PMK configure scripts
· Support for ant build.xml files (VERY minimal)
· If none of the above works, tries to auto-edit Makefiles
· Support for pre-configure scripts
· Properly handles conflicting info/dir files.
· Properly handles conflicting perlocal.pod files.
· Does not (cannot) handle every possible package out there. User intervention is, sometimes, required.
· While every effort was made to ensure that stash detects packages correctly, there are many non-standard packages out there. This is most harmful when a package doesn't obey the "normal" rules that 90% of the other packages of that type obey.
· Support for Ant is currently VERY limited. Please send me updates and ideas on this... I know very little about Ant.
· stash needs to be tested (and possibly ported) to earlier versions of perl so that it is more portable. It was developed under perl 5.6 and the author hasn't tested it on earlier versions.