1{
2 config,
3 lib,
4 pkgs,
5 ...
6}:
7
8let
9 cfg = config.programs.liboping;
10in
11{
12 options.programs.liboping = {
13 enable = lib.mkEnableOption "liboping";
14 };
15 config = lib.mkIf cfg.enable {
16 environment.systemPackages = with pkgs; [ liboping ];
17 security.wrappers = lib.mkMerge (
18 builtins.map
19 (exec: {
20 "${exec}" = {
21 owner = "root";
22 group = "root";
23 capabilities = "cap_net_raw+p";
24 source = "${pkgs.liboping}/bin/${exec}";
25 };
26 })
27 [
28 "oping"
29 "noping"
30 ]
31 );
32 };
33}