Creating one's own quicklisp distribution (was: Work-around built-in ~/common-lisp/ in search path?)
Kambiz Darabi
darabi at m-creations.com
Fri Nov 18 15:41:07 UTC 2016
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 at sift.net> wrote:
> Here's my issue:
>
> 1. 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.
>
> 2. 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).
>
> 3. I cannot build my system because the version of fiveam in
> ~/common-lisp/ shadows the version of fiveam from quicklisp, which I need.
>
> 4. 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
More information about the asdf-devel
mailing list