nixos/rasdaemon: add package option

Matei Dibu f91b6f35 498c2d68

Changed files
+7 -5
nixos
modules
services
hardware
+7 -5
nixos/modules/services/hardware/rasdaemon.nix
···
enable = lib.mkEnableOption "RAS logging daemon";
+
package = lib.mkPackageOption pkgs "rasdaemon" { };
+
record = lib.mkOption {
type = lib.types.bool;
default = true;
···
};
};
environment.systemPackages =
-
[ pkgs.rasdaemon ]
+
[ cfg.package ]
++ lib.optionals (cfg.testing) (
with pkgs.error-inject;
[
···
StateDirectory = lib.optionalString (cfg.record) "rasdaemon";
ExecStart =
-
"${pkgs.rasdaemon}/bin/rasdaemon --foreground" + lib.optionalString (cfg.record) " --record";
-
ExecStop = "${pkgs.rasdaemon}/bin/rasdaemon --disable";
+
"${cfg.package}/bin/rasdaemon --foreground" + lib.optionalString (cfg.record) " --record";
+
ExecStop = "${cfg.package}/bin/rasdaemon --disable";
Restart = "on-abort";
# src/misc/rasdaemon.service.in shows this:
-
# ExecStartPost = ${pkgs.rasdaemon}/bin/rasdaemon --enable
+
# ExecStartPost = ${cfg.package}/bin/rasdaemon --enable
# but that results in unpredictable existence of the database
# and everything seems to be enabled without this...
};
···
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "oneshot";
-
ExecStart = "${pkgs.rasdaemon}/bin/ras-mc-ctl --register-labels";
+
ExecStart = "${cfg.package}/bin/ras-mc-ctl --register-labels";
RemainAfterExit = true;
};
};