about summary refs log tree commit diff
path: root/third_party/common_lisp/quicklisp.nix
diff options
context:
space:
mode:
authorVincent Ambo <tazjin@google.com>2019-09-02T00·24+0100
committerVincent Ambo <tazjin@google.com>2019-09-02T00·24+0100
commitb43e5529f770818710fffd2458e320f49272d26f (patch)
tree6db312785f934137d3245b2f6261986a576b263b /third_party/common_lisp/quicklisp.nix
parenta635beabfa965436e411d76473714f8b53d29549 (diff)
feat(third_party): Add missing Quicklisp packages for Gemma r/69
Gemma depends on cl-prevalence, which isn't in the nixpkgs Quicklisp
snapshot.

This adds the package and its dependencies to the overlay.
Diffstat (limited to 'third_party/common_lisp/quicklisp.nix')
-rw-r--r--third_party/common_lisp/quicklisp.nix29
1 files changed, 29 insertions, 0 deletions
diff --git a/third_party/common_lisp/quicklisp.nix b/third_party/common_lisp/quicklisp.nix
new file mode 100644
index 000000000000..a0040f1d6f7e
--- /dev/null
+++ b/third_party/common_lisp/quicklisp.nix
@@ -0,0 +1,29 @@
+# Overlay over `pkgs.lispPackages` that adds additional packages which
+# are missing from the imported Quicklisp package set in nixpkgs.
+
+{ lib, lispPackages }:
+
+let inherit (lispPackages) buildLispPackage qlOverrides fetchurl;
+in lispPackages // lib.fix(self: {
+  "s-xml" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."s-xml" or (x: {}))
+       (import ./quicklisp-to-nix-output/s-xml.nix {
+         inherit fetchurl;
+       }));
+
+  "s-sysdeps" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."s-sysdeps" or (x: {}))
+       (import ./quicklisp-to-nix-output/s-sysdeps.nix {
+         inherit fetchurl;
+       }));
+
+  "cl-prevalence" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-prevalence" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-prevalence.nix {
+         inherit fetchurl;
+         inherit (self) s-sysdeps s-xml;
+       }));
+})