anchor.diff:          description = ''
             Extra configuration options that will be added verbatim at
             the end of the slurm configuration file.
  +        '';
  +      };
  +
  +      extraPlugstackConfig = mkOption {
  +        default = "";
  +        type = types.lines;
  +        description = ''
  +          Extra configuration that will be added to the end of <literal>plugstack.conf</literal>.
  +        '';
  +      };
  +
  +      extraCgroupConfig = mkOption {
  +        default = "";
  +        type = types.lines;
  +        description = ''
  +          Extra configuration for <literal>cgroup.conf</literal>. This file is
  +          used when <literal>procTrackType=proctrack/cgroup</literal>.
           '';
         };
       };
  
positive.code: 
    cfg = config.services.slurm;
    # configuration file can be generated by http://slurm.schedmd.com/configurator.html
    configFile = pkgs.writeText "slurm.conf"
      ''
        ${optionalString (cfg.controlMachine != null) ''controlMachine=${cfg.controlMachine}''}
        ${optionalString (cfg.controlAddr != null) ''controlAddr=${cfg.controlAddr}''}
  
negative.code:       '';
      };
  
      services.openssh.forwardX11 = mkIf cfg.client.enable (mkDefault true);
  
      systemd.services.slurmctld = mkIf (cfg.server.enable) {
        path = with pkgs; [ wrappedSlurm munge coreutils ]
          ++ lib.optional cfg.enableSrunX11 slurm-spank-x11;
  