diff options
author | Luke Gorrie <lukego@gmail.com> | 2021-10-20 16:30:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-20 14:30:31 +0000 |
commit | 4f9ca7c56556432c33adb77da765022ae1d4589c (patch) | |
tree | 221722324c57bee4bcd59c906ece8f8c66e4e29c /pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix | |
parent | 5b455776e301b85e1180f71b9237b37e00f7134f (diff) | |
download | nixpkgs-4f9ca7c56556432c33adb77da765022ae1d4589c.tar nixpkgs-4f9ca7c56556432c33adb77da765022ae1d4589c.tar.gz nixpkgs-4f9ca7c56556432c33adb77da765022ae1d4589c.tar.bz2 nixpkgs-4f9ca7c56556432c33adb77da765022ae1d4589c.tar.lz nixpkgs-4f9ca7c56556432c33adb77da765022ae1d4589c.tar.xz nixpkgs-4f9ca7c56556432c33adb77da765022ae1d4589c.tar.zst nixpkgs-4f9ca7c56556432c33adb77da765022ae1d4589c.zip |
Common lisp update (#142209)
quicklisp: 2021-02-13 -> 2021-08-07 lispPackages: regenerate from fresher Quicklisp sbcl: 2.1.2 -> 2.1.9 (switch default version) lispPackages.mgl, lispPackages.mgl-mat: init lispPackages.iolib: suppress network-reliant tests lispPackages.esrap: apply upstream SBCL 2.1.9 compatibility patch Removed packages caveman and clack-v1-compat that are removed. Added more packages from Quicklisp. * lisp-modules/shell.nix: Add openblas for MGL * lisp-modules: Update README.txt Mention that shell.nix needs to be updated when adding packages that have external dependencies during package analysis, e.g. package :LLA that specifically wants to load libblas.so at compile-time. * lisp-modules/define-package.nix: Fix package path deduplication The deduplication of NIX_LISP_ASDF_PATHS was not working, apparently due to a shell quoting bug causing the sort/uniq pipeline to run at the wrong time. This is now deduplicated in a separate step. This fixes a series problem where environments with many Lisp packages would exhasut the available environment space on Linux, causing obscure "too many arguments" error messages from the shell, because the NIX_LISP_ASDF_PATHS list was bloated with ~90% duplicates. Co-authored-by: Luke Gorrie <luke@nuddy.co>
Diffstat (limited to 'pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix')
-rw-r--r-- | pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix index dbc57cb8d1f..157cf8302c8 100644 --- a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix +++ b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix @@ -51,6 +51,8 @@ in overrides = y: (x.overrides y) // { prePatch = '' sed 's|default \"libfixposix\"|default \"${pkgs.libfixposix}/lib/libfixposix\"|' -i src/syscalls/ffi-functions-unix.lisp + # Socket tests don't work because they try to access the internet + sed 's/(:file "sockets" :depends-on ("pkgdcl" "defsuites"))//' -i iolib.asd ''; }; @@ -278,5 +280,31 @@ $out/lib/common-lisp/query-fs" (extraLispDeps (with quicklisp-to-nix-packages; [flexi-streams])); cl-gobject-introspection = addNativeLibs (with pkgs; [glib gobject-introspection]); generic-cl = x: { parasites = []; }; - static-dispatch = x: { parasites = []; }; + static-dispatch = x: { + overrides = y: (x.overrides y) // { + parasites = []; + # workaround for https://github.com/alex-gutev/static-dispatch/issues/12 + postUnpack = '' + sed -e '/^(in-package / a (eval-when (:compile-toplevel :load-toplevel :execute)' \ + -e '$a)' \ + -i $sourceRoot/src/combin.lisp + ''; + }; + }; + lla = addNativeLibs [ pkgs.openblas ]; + esrap = x: { + overrides = y: (x.overrides y) // { + postPatch = '' + patch -p1 < ${ + # Quicklisp 2021-08-07 packages an Esrap that doesn't build with SBCL 2.1.9. + # Therefore we pull patches from the Esrap repo to fix this. + # See https://github.com/scymtym/parser.common-rules/issues/1 + pkgs.fetchurl { + url = https://github.com/scymtym/esrap/compare/4034df872c2b1b8e91adbccab491645c8138253b...c99c33a33ff58ca85e8ba73912eba45d458eaa72.diff; + sha256 = "sha256:1sg2mgzilmwj5kwlmx0s60wk2769c3mpqjl00ga2p74ra5hykvx8"; + }} + ''; + }; + }; +# cl-opengl = addNativeLibs [ pkgs.libGL pkgs.glfw ]; } |