diff options
author | Maximilian Bosch <maximilian@mbosch.me> | 2020-01-16 18:06:35 +0100 |
---|---|---|
committer | Maximilian Bosch <maximilian@mbosch.me> | 2020-01-16 18:09:35 +0100 |
commit | d77b68e48709887741a3ff61c568beb9699aaac8 (patch) | |
tree | ff78f8775c9ca9fbc135c1920376d9c39301cf8f /nixos/modules/programs | |
parent | 404d9529e1043fa0ec8459f66b3917142a889fe4 (diff) |
nixos/liboping: add module
This creates setcap wrappers for oping and noping to allow unprivileged
users to use those as well.
Diffstat (limited to 'nixos/modules/programs')
-rw-r--r-- | nixos/modules/programs/liboping.nix | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/nixos/modules/programs/liboping.nix b/nixos/modules/programs/liboping.nix new file mode 100644 index 000000000000..4e4c235ccde4 --- /dev/null +++ b/nixos/modules/programs/liboping.nix @@ -0,0 +1,22 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.programs.liboping; +in { + options.programs.liboping = { + enable = mkEnableOption "liboping"; + }; + config = mkIf cfg.enable { + environment.systemPackages = with pkgs; [ liboping ]; + security.wrappers = mkMerge (map ( + exec: { + "${exec}" = { + source = "${pkgs.liboping}/bin/${exec}"; + capabilities = "cap_net_raw+p"; + }; + } + ) [ "oping" "noping" ]); + }; +} |