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