tor-browser: fix desktop icon (#365780)
[NixPkgs.git] / nixos / modules / services / monitoring / prometheus / exporters / apcupsd.nix
blob3f5d66b0168f9cd56ff1e4571ddae30bcda17af2
2   config,
3   lib,
4   pkgs,
5   options,
6   ...
7 }:
9 let
10   cfg = config.services.prometheus.exporters.apcupsd;
11   inherit (lib) mkOption types concatStringsSep;
14   port = 9162;
15   extraOpts = {
16     apcupsdAddress = mkOption {
17       type = types.str;
18       default = ":3551";
19       description = ''
20         Address of the apcupsd Network Information Server (NIS).
21       '';
22     };
24     apcupsdNetwork = mkOption {
25       type = types.enum [
26         "tcp"
27         "tcp4"
28         "tcp6"
29       ];
30       default = "tcp";
31       description = ''
32         Network of the apcupsd Network Information Server (NIS): one of "tcp", "tcp4", or "tcp6".
33       '';
34     };
35   };
36   serviceOpts = {
37     serviceConfig = {
38       ExecStart = ''
39         ${pkgs.prometheus-apcupsd-exporter}/bin/apcupsd_exporter \
40           -telemetry.addr ${cfg.listenAddress}:${toString cfg.port} \
41           -apcupsd.addr ${cfg.apcupsdAddress} \
42           -apcupsd.network ${cfg.apcupsdNetwork} \
43           ${concatStringsSep " \\\n  " cfg.extraFlags}
44       '';
45     };
46   };