python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / nixos / modules / services / monitoring / monit.nix
bloba22bbc9046ba765601bf5ad03a3d691bdbbd42af
1 {config, pkgs, lib, ...}:
3 with lib;
5 let
6   cfg = config.services.monit;
7 in
10   options.services.monit = {
12     enable = mkEnableOption (lib.mdDoc "Monit");
14     config = mkOption {
15       type = types.lines;
16       default = "";
17       description = lib.mdDoc "monitrc content";
18     };
20   };
22   config = mkIf cfg.enable {
24     environment.systemPackages = [ pkgs.monit ];
26     environment.etc.monitrc = {
27       text = cfg.config;
28       mode = "0400";
29     };
31     systemd.services.monit = {
32       description = "Pro-active monitoring utility for unix systems";
33       after = [ "network.target" ];
34       wantedBy = [ "multi-user.target" ];
35       serviceConfig = {
36         ExecStart = "${pkgs.monit}/bin/monit -I -c /etc/monitrc";
37         ExecStop = "${pkgs.monit}/bin/monit -c /etc/monitrc quit";
38         ExecReload = "${pkgs.monit}/bin/monit -c /etc/monitrc reload";
39         KillMode = "process";
40         Restart = "always";
41       };
42       restartTriggers = [ config.environment.etc.monitrc.source ];
43     };
45   };
47   meta.maintainers = with maintainers; [ ryantm ];