aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/nixos/modules/services/development/jupyter/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/nixos/modules/services/development/jupyter/default.nix')
-rw-r--r--nixpkgs/nixos/modules/services/development/jupyter/default.nix28
1 files changed, 23 insertions, 5 deletions
diff --git a/nixpkgs/nixos/modules/services/development/jupyter/default.nix b/nixpkgs/nixos/modules/services/development/jupyter/default.nix
index e598b018645..6a5fd6b2940 100644
--- a/nixpkgs/nixos/modules/services/development/jupyter/default.nix
+++ b/nixpkgs/nixos/modules/services/development/jupyter/default.nix
@@ -6,10 +6,7 @@ let
cfg = config.services.jupyter;
- # NOTE: We don't use top-level jupyter because we don't
- # want to pass in JUPYTER_PATH but use .environment instead,
- # saving a rebuild.
- package = pkgs.python3.pkgs.notebook;
+ package = cfg.package;
kernels = (pkgs.jupyter-kernel.create {
definitions = if cfg.kernels != null
@@ -37,6 +34,27 @@ in {
'';
};
+ package = mkOption {
+ type = types.package;
+ # NOTE: We don't use top-level jupyter because we don't
+ # want to pass in JUPYTER_PATH but use .environment instead,
+ # saving a rebuild.
+ default = pkgs.python3.pkgs.notebook;
+ description = ''
+ Jupyter package to use.
+ '';
+ };
+
+ command = mkOption {
+ type = types.str;
+ default = "jupyter-notebook";
+ example = "jupyter-lab";
+ description = ''
+ Which command the service runs. Note that not all jupyter packages
+ have all commands, e.g. jupyter-lab isn't present in the default package.
+ '';
+ };
+
port = mkOption {
type = types.int;
default = 8888;
@@ -157,7 +175,7 @@ in {
serviceConfig = {
Restart = "always";
- ExecStart = ''${package}/bin/jupyter-notebook \
+ ExecStart = ''${package}/bin/${cfg.command} \
--no-browser \
--ip=${cfg.ip} \
--port=${toString cfg.port} --port-retries 0 \