nixos/slurm: fix X11 with spank module

* Fix path in module for slurm to find plugstack.conf
* Fix configure flags so that slurm can be compiled
  without internal X11 support (required for spank-x11).
This commit is contained in:
Markus Kowalewski 2019-11-05 22:00:23 +01:00
parent 9e733df81f
commit 8219a3b713
No known key found for this signature in database
GPG Key ID: D865C8A91D7025EB
2 changed files with 10 additions and 5 deletions

@ -18,7 +18,7 @@ let
${optionalString (cfg.controlAddr != null) ''controlAddr=${cfg.controlAddr}''} ${optionalString (cfg.controlAddr != null) ''controlAddr=${cfg.controlAddr}''}
${toString (map (x: "NodeName=${x}\n") cfg.nodeName)} ${toString (map (x: "NodeName=${x}\n") cfg.nodeName)}
${toString (map (x: "PartitionName=${x}\n") cfg.partitionName)} ${toString (map (x: "PartitionName=${x}\n") cfg.partitionName)}
PlugStackConfig=${plugStackConfig} PlugStackConfig=${plugStackConfig}/plugstack.conf
ProctrackType=${cfg.procTrackType} ProctrackType=${cfg.procTrackType}
${cfg.extraConfig} ${cfg.extraConfig}
''; '';
@ -48,7 +48,6 @@ let
name = "etc-slurm"; name = "etc-slurm";
paths = [ configFile cgroupConfig plugStackConfig ] ++ cfg.extraConfigPaths; paths = [ configFile cgroupConfig plugStackConfig ] ++ cfg.extraConfigPaths;
}; };
in in
{ {
@ -112,7 +111,7 @@ in
package = mkOption { package = mkOption {
type = types.package; type = types.package;
default = pkgs.slurm; default = pkgs.slurm.override { enableX11 = ! cfg.enableSrunX11; };
defaultText = "pkgs.slurm"; defaultText = "pkgs.slurm";
example = literalExample "pkgs.slurm-full"; example = literalExample "pkgs.slurm-full";
description = '' description = ''
@ -178,9 +177,14 @@ in
If enabled srun will accept the option "--x11" to allow for X11 forwarding If enabled srun will accept the option "--x11" to allow for X11 forwarding
from within an interactive session or a batch job. This activates the from within an interactive session or a batch job. This activates the
slurm-spank-x11 module. Note that this option also enables slurm-spank-x11 module. Note that this option also enables
'services.openssh.forwardX11' on the client. <option>services.openssh.forwardX11</option> on the client.
This option requires slurm to be compiled without native X11 support. This option requires slurm to be compiled without native X11 support.
The default behavior is to re-compile the slurm package with native X11
support disabled if this option is set to true.
To use the native X11 support add <literal>PrologFlags=X11</literal> in <option>extraConfig</option>.
Note that this method will only work RSA SSH host keys.
''; '';
}; };

@ -48,7 +48,8 @@ stdenv.mkDerivation rec {
"--with-zlib=${zlib}" "--with-zlib=${zlib}"
"--sysconfdir=/etc/slurm" "--sysconfdir=/etc/slurm"
] ++ (optional (gtk2 == null) "--disable-gtktest") ] ++ (optional (gtk2 == null) "--disable-gtktest")
++ (optional enableX11 "--with-libssh2=${libssh2.dev}"); ++ (optional enableX11 "--with-libssh2=${libssh2.dev}")
++ (optional (!enableX11) "--disable-x11");
preConfigure = '' preConfigure = ''