about summary refs log tree commit diff
path: root/third_party
diff options
context:
space:
mode:
Diffstat (limited to 'third_party')
-rw-r--r--third_party/lisp/alexandria.nix32
1 files changed, 32 insertions, 0 deletions
diff --git a/third_party/lisp/alexandria.nix b/third_party/lisp/alexandria.nix
new file mode 100644
index 000000000000..dbe0554d6286
--- /dev/null
+++ b/third_party/lisp/alexandria.nix
@@ -0,0 +1,32 @@
+# Alexandria is one of the foundational Common Lisp libraries that
+# pretty much everything depends on:
+#
+# https://common-lisp.net/project/alexandria/
+{ pkgs, ... }:
+
+let src = builtins.fetchGit {
+  url = "https://gitlab.common-lisp.net/alexandria/alexandria";
+  rev = "1224346a48770dc07a68ef3e612b9ac3d611eb07";
+};
+in pkgs.nix.buildLisp.library {
+  name = "alexandria";
+  srcs = map (f: src + ("/" + f)) [
+    "package.lisp"
+    "definitions.lisp"
+    "binding.lisp"
+    "strings.lisp"
+    "conditions.lisp"
+    "symbols.lisp"
+    "macros.lisp"
+    "functions.lisp"
+    "io.lisp"
+    "hash-tables.lisp"
+    "control-flow.lisp"
+    "lists.lisp"
+    "types.lisp"
+    "arrays.lisp"
+    "sequences.lisp"
+    "numbers.lisp"
+    "features.lisp"
+  ];
+}