about summary refs log tree commit diff
path: root/third_party/common_lisp/quicklisp.nix
diff options
context:
space:
mode:
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;
+       }));
+})