about summary refs log tree commit diff
path: root/nix/buildLisp
diff options
context:
space:
mode:
authorVincent Ambo <tazjin@google.com>2020-01-08T19·38+0000
committerVincent Ambo <tazjin@google.com>2020-01-08T19·38+0000
commitb5e1e81a3dcf8ef9ad45bfdf3dbf22c03f163ec3 (patch)
tree96966102ffbbe1f83d63d1e703d478c8f4abf0ec /nix/buildLisp
parentca199a57d9b06130f6149a50742bba6c1c75a009 (diff)
feat(buildLisp): Add function to wrap SBCL with dependencies r/347
Adds `buildLisp.sbclWith` which creates an SBCL wrapper the contains
all the requested dependencies.
Diffstat (limited to 'nix/buildLisp')
-rw-r--r--nix/buildLisp/default.nix6
1 files changed, 4 insertions, 2 deletions
diff --git a/nix/buildLisp/default.nix b/nix/buildLisp/default.nix
index 99106315a5..4ce2bbcc01 100644
--- a/nix/buildLisp/default.nix
+++ b/nix/buildLisp/default.nix
@@ -9,7 +9,7 @@
 
 let
   inherit (builtins) map elemAt match;
-  inherit (pkgs.third_party) lib runCommandNoCC writeText sbcl;
+  inherit (pkgs.third_party) lib runCommandNoCC writeText writeShellScriptBin sbcl;
 
   #
   # Internal helper definitions
@@ -83,7 +83,9 @@ let
 
   # 'sbclWith' creates an image with the specified libraries /
   # programs loaded.
-  sbclWith = {};
+  sbclWith = deps: writeShellScriptBin "sbcl" ''
+    exec ${sbcl}/bin/sbcl ${insertLibraryLoads deps} $@
+  '';
 in {
   library = makeOverridable library;
   program = makeOverridable program;