handheld-daemon-ui: 3.2.3 -> 3.3.0 (#361609)
[NixPkgs.git] / nixos / modules / services / development / jupyter / kernel-options.nix
blob421e1a0cf51dcd070545b5b3ba6fb15543172ffe
1 # Options that can be used for creating a jupyter kernel.
2 { lib, pkgs }:
4   freeformType = (pkgs.formats.json { }).type;
6   options = {
8     displayName = lib.mkOption {
9       type = lib.types.str;
10       default = "";
11       example = lib.literalExpression ''
12         "Python 3"
13         "Python 3 for Data Science"
14       '';
15       description = ''
16         Name that will be shown to the user.
17       '';
18     };
20     argv = lib.mkOption {
21       type = lib.types.listOf lib.types.str;
22       example = [
23         "{customEnv.interpreter}"
24         "-m"
25         "ipykernel_launcher"
26         "-f"
27         "{connection_file}"
28       ];
29       description = ''
30         Command and arguments to start the kernel.
31       '';
32     };
34     language = lib.mkOption {
35       type = lib.types.str;
36       example = "python";
37       description = ''
38         Language of the environment. Typically the name of the binary.
39       '';
40     };
42     env = lib.mkOption {
43       type = lib.types.attrsOf lib.types.str;
44       default = { };
45       example = { OMP_NUM_THREADS = "1"; };
46       description = ''
47         Environment variables to set for the kernel.
48       '';
49     };
51     logo32 = lib.mkOption {
52       type = lib.types.nullOr lib.types.path;
53       default = null;
54       example = lib.literalExpression ''"''${env.sitePackages}/ipykernel/resources/logo-32x32.png"'';
55       description = ''
56         Path to 32x32 logo png.
57       '';
58     };
59     logo64 = lib.mkOption {
60       type = lib.types.nullOr lib.types.path;
61       default = null;
62       example = lib.literalExpression ''"''${env.sitePackages}/ipykernel/resources/logo-64x64.png"'';
63       description = ''
64         Path to 64x64 logo png.
65       '';
66     };
68     extraPaths = lib.mkOption {
69       type = lib.types.attrsOf lib.types.path;
70       default = { };
71       example = lib.literalExpression ''"{ examples = ''${env.sitePack}/IRkernel/kernelspec/kernel.js"; }'';
72       description = ''
73         Extra paths to link in kernel directory
74       '';
75     };
76   };