From d011ca205fdd40828186d196cc1a678638687211 Mon Sep 17 00:00:00 2001 From: hqurve Date: Sun, 13 Mar 2022 17:44:08 -0400 Subject: [PATCH] jupyter-kernel: Link extraPaths --- pkgs/applications/editors/jupyter/kernel.nix | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/editors/jupyter/kernel.nix b/pkgs/applications/editors/jupyter/kernel.nix index fba884f5a2fd..0fd59ca391e9 100644 --- a/pkgs/applications/editors/jupyter/kernel.nix +++ b/pkgs/applications/editors/jupyter/kernel.nix @@ -39,26 +39,22 @@ in ${concatStringsSep "\n" (mapAttrsToList (kernelName: unfilteredKernel: let - allowedKernelKeys = ["argv" "displayName" "language" "interruptMode" "env" "metadata" "logo32" "logo64"]; + allowedKernelKeys = ["argv" "displayName" "language" "interruptMode" "env" "metadata" "logo32" "logo64" "extraPaths"]; kernel = 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';" - else ""; - logo64 = - if (kernel.logo64 != null) - then "ln -s ${kernel.logo64} 'kernels/${kernelName}/logo-64x64.png';" - else ""; + extraPaths = kernel.extraPaths or {} + // lib.optionalAttrs (kernel.logo32 != null) { "logo-32x32.png" = kernel.logo32; } + // lib.optionalAttrs (kernel.logo64 != null) { "logo-64x64.png" = kernel.logo64; } + ; + linkExtraPaths = lib.mapAttrsToList (name: value: "ln -s ${value} 'kernels/${kernelName}/${name}';") extraPaths; in '' mkdir 'kernels/${kernelName}'; echo '${config}' > 'kernels/${kernelName}/kernel.json'; - ${logo32} - ${logo64} + ${lib.concatStringsSep "\n" linkExtraPaths} '') definitions)} mkdir $out