Hi Robert,
a side note: have you ever considered creating your company-internal quicklisp distribution?
We are in the same situation of needing defined versions of dependencies indepent from what is in the current quicklisp dist. We solve this by having a repository with a file which contains a list of git repos where the master branches contain what we want to distribute in the dist.
Using shirakumo-dist [1], a new release is created with:
(asdf:load-system :m-creations-dist) (m-creations-dist::redist)
You can then rsync the release/ subdir to a web server and your colleagues can use the release with
(ql-dist:install-dist "http://quicklisp.sift.internal/dist1.txt")
Nicolas Hafner pointed me to his shirakumo-dist [1] which in turn uses Quickdist [2] which I took as blueprint for ours [3].
HTH
Kambiz
[1] https://github.com/Shirakumo/dist
[2] https://github.com/orivej/quickdist
[3] https://github.com/m-creations/m-creations-dist
On 2016-11-16 19:01 CET, Robert Goldman rpgoldman@sift.net wrote:
Here's my issue:
- I have a bunch of lisp libraries that I use on everyday things
installed in ~/common-lisp/. One of the systems in there is an older, modified version of fiveam that my company uses in many projects.
- I have a project where we use libraries from quicklisp to make it
easier to handle dependencies. For this project, I run a function that resets the ASDF source-registry, and uses a special copy of quicklisp (a copy that writes its systems in a different location).
- I cannot build my system because the version of fiveam in
~/common-lisp/ shadows the version of fiveam from quicklisp, which I need.
- I don't see any OBVIOUS way to tell ASDF to ignore my ~/common-lisp/
directory. I can do the following:
(setf asdf:*default-source-registries* (remove 'asdf/source-registry::default-user-source-registry asdf:*default-source-registries*))
but that seems really hard-core. Would it be reasonable to make the defaults a little easier to override?
Maybe something that's equivalent to --no-userinit and --no-sysinit when starting lisp -- something that will remove the user-specific entries or system-specific entries, respectively?
I don't believe I can simply wipe the defaults, because then I might miss some SBCL libraries that come with the system default settings.
Cheers, r