summary refs log tree commit diff
diff options
context:
space:
mode:
authorTom McLaughlin <pyro777@gmail.com>2019-07-11 01:29:36 -0700
committerFrederik Rietdijk <freddyrietdijk@fridh.nl>2019-07-11 10:29:35 +0200
commitf72d7c49d58e0ab1ea948e015eeee9b4b5af4036 (patch)
treedac81c9dcee38ae4f2fd75582f1ae0d8e755e710
parent0426ae63f8ae0cafe1758196bc684c85f80fe42d (diff)
downloadnixpkgs-f72d7c49d58e0ab1ea948e015eeee9b4b5af4036.tar
nixpkgs-f72d7c49d58e0ab1ea948e015eeee9b4b5af4036.tar.gz
nixpkgs-f72d7c49d58e0ab1ea948e015eeee9b4b5af4036.tar.bz2
nixpkgs-f72d7c49d58e0ab1ea948e015eeee9b4b5af4036.tar.lz
nixpkgs-f72d7c49d58e0ab1ea948e015eeee9b4b5af4036.tar.xz
nixpkgs-f72d7c49d58e0ab1ea948e015eeee9b4b5af4036.tar.zst
nixpkgs-f72d7c49d58e0ab1ea948e015eeee9b4b5af4036.zip
Add optional Jupyter kernelspec options from the spec (#55989)
-rw-r--r--pkgs/applications/editors/jupyter/kernel.nix16
1 files changed, 8 insertions, 8 deletions
diff --git a/pkgs/applications/editors/jupyter/kernel.nix b/pkgs/applications/editors/jupyter/kernel.nix
index 38c61dba751..b34a956410e 100644
--- a/pkgs/applications/editors/jupyter/kernel.nix
+++ b/pkgs/applications/editors/jupyter/kernel.nix
@@ -37,15 +37,15 @@ in
     installPhase =  ''
       mkdir kernels
 
-      ${concatStringsSep "\n" (mapAttrsToList (kernelName: kernel:
+      ${concatStringsSep "\n" (mapAttrsToList (kernelName: unfilteredKernel:
         let
-          config = builtins.toJSON {
-            display_name = if (kernel.displayName != "")
-              then kernel.displayName
-              else kernelName;
-            argv = kernel.argv;
-            language = kernel.language;
-          };
+          allowedKernelKeys = ["argv" "displayName" "language" "interruptMode" "env" "metadata" "logo32" "logo64"];
+          kernel = traceVal (filterAttrs (n: v: (any (x: x == n) allowedKernelKeys)) unfilteredKernel);
+          config = builtins.toJSON (
+            kernel
+            // {display_name = if (kernel.displayName != "") then kernel.displayName else kernelName;}
+            // (optionalAttrs (kernel ? interruptMode) { interrupt_mode = kernel.interruptMode; })
+          );
           logo32 =
             if (kernel.logo32 != null)
             then "ln -s ${kernel.logo32} 'kernels/${kernelName}/logo-32x32.png';"