Commit f91b6f35 authored by Matei Dibu's avatar Matei Dibu
Browse files

nixos/rasdaemon: add package option

parent 498c2d68
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -14,6 +14,8 @@ in

    enable = lib.mkEnableOption "RAS logging daemon";

    package = lib.mkPackageOption pkgs "rasdaemon" { };

    record = lib.mkOption {
      type = lib.types.bool;
      default = true;
@@ -99,7 +101,7 @@ in
      };
    };
    environment.systemPackages =
      [ pkgs.rasdaemon ]
      [ cfg.package ]
      ++ lib.optionals (cfg.testing) (
        with pkgs.error-inject;
        [
@@ -151,12 +153,12 @@ in
          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...
        };
@@ -167,7 +169,7 @@ in
        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;
        };
      };