1{ config, lib, pkgs, ... }:
2
3with lib;
4
5let
6 cfg = config.programs.wavemon;
7in {
8 options = {
9 programs.wavemon = {
10 enable = mkOption {
11 type = types.bool;
12 default = false;
13 description = lib.mdDoc ''
14 Whether to add wavemon to the global environment and configure a
15 setcap wrapper for it.
16 '';
17 };
18 };
19 };
20
21 config = mkIf cfg.enable {
22 environment.systemPackages = with pkgs; [ wavemon ];
23 security.wrappers.wavemon = {
24 owner = "root";
25 group = "root";
26 capabilities = "cap_net_admin+ep";
27 source = "${pkgs.wavemon}/bin/wavemon";
28 };
29 };
30}