ASDF systems dependency listing and archiving tool for Common Lisp
1Enumerating system's dependencies
The resulting list of system names is deduplicated and pruned of dependencies within same system directories.
2Listing dependencies' pathnames
(systems-paths (deptree "hunchentoot"))
3Archiving system's dependencies
(systems-archive dependencies /tarball-pathname/ &key (sanitize-p t) (path-prefix ""))
(systems-archive (deptree "hunchentoot") #p"/tmp/hunchentoot-deps.tgz")
Before archiving, make sure the dependencies are in fact present on your host. If you are using Quicklisp it's as easy as quickload-ing the system.
All systems directories are stored flat (with prepeneded
:PATH-PREFIX) regardless their original
absolute pathnames. Since feature-conditional dependencies are honored, please ensure you're archiving from
the relevant platform.
:SANITIZE-P is NIL, the function will clean up git and Mercurial DVCS data from the archives.