summary refs log tree commit diff
path: root/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
diff options
context:
space:
mode:
authorBrad Jensen <brad@bradjensen.net>2017-08-30 17:22:51 -0700
committerBrad Jensen <brad@bradjensen.net>2017-08-31 20:10:19 -0700
commitd1e11cd41e68b553e8b5ee9ea399d6751455c4ce (patch)
tree2404dc17b94e47bcbc308978388bf21e3b723a6b /pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
parentacd05c506d03409865bb351bf2d2b40df6dca6a4 (diff)
downloadnixpkgs-d1e11cd41e68b553e8b5ee9ea399d6751455c4ce.tar
nixpkgs-d1e11cd41e68b553e8b5ee9ea399d6751455c4ce.tar.gz
nixpkgs-d1e11cd41e68b553e8b5ee9ea399d6751455c4ce.tar.bz2
nixpkgs-d1e11cd41e68b553e8b5ee9ea399d6751455c4ce.tar.lz
nixpkgs-d1e11cd41e68b553e8b5ee9ea399d6751455c4ce.tar.xz
nixpkgs-d1e11cd41e68b553e8b5ee9ea399d6751455c4ce.tar.zst
nixpkgs-d1e11cd41e68b553e8b5ee9ea399d6751455c4ce.zip
Regenerate quicklisp-to-nix
Note: Changes to overrides were necessary
Diffstat (limited to 'pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix')
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix38
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
index 6ea0a2166e3..93a533f6ecc 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
@@ -84,6 +84,39 @@ in
     };
   };
   sqlite = addNativeLibs [pkgs.sqlite];
+  swank = x: {
+    overrides = y: (x.overrides y) // {
+      postPatch = ''
+        patch <<EOD
+        --- swank-loader.lisp	2017-08-30 16:46:16.554076684 -0700
+        +++ swank-loader-new.lisp	2017-08-30 16:49:23.333450928 -0700
+        @@ -155,7 +155,7 @@
+                          ,(unique-dir-name)))
+            (user-homedir-pathname)))
+         
+        -(defvar *fasl-directory* (default-fasl-dir)
+        +(defvar *fasl-directory* #P"$out/lib/common-lisp/swank/fasl/"
+           "The directory where fasl files should be placed.")
+         
+         (defun binary-pathname (src-pathname binary-dir)
+        @@ -277,12 +277,7 @@
+                          (contrib-dir src-dir))))
+         
+         (defun delete-stale-contrib-fasl-files (swank-files contrib-files fasl-dir)
+        -  (let ((newest (reduce #'max (mapcar #'file-write-date swank-files))))
+        -    (dolist (src contrib-files)
+        -      (let ((fasl (binary-pathname src fasl-dir)))
+        -        (when (and (probe-file fasl)
+        -                   (<= (file-write-date fasl) newest))
+        -          (delete-file fasl))))))
+        +  (declare (ignore swank-files contrib-files fasl-dir)))
+         
+         (defun compile-contribs (&key (src-dir (contrib-dir *source-directory*))
+                                    (fasl-dir (contrib-dir *fasl-directory*))
+        EOD
+      '';
+    };
+  };
   uiop = x: {
     parasites = (x.parasites or []) ++ [
       "uiop/version"
@@ -100,4 +133,9 @@ in
     };
   };
   mssql = addNativeLibs [pkgs.freetds];
+  cl-unification = x: {
+    asdFilesToKeep = (x.asdFilesToKeep or []) ++ [
+      "cl-unification-lib.asd"
+    ];
+  };
 }