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 | |
parent | 404d9529e1043fa0ec8459f66b3917142a889fe4 (diff) | |
download | nixlib-d77b68e48709887741a3ff61c568beb9699aaac8.tar nixlib-d77b68e48709887741a3ff61c568beb9699aaac8.tar.gz nixlib-d77b68e48709887741a3ff61c568beb9699aaac8.tar.bz2 nixlib-d77b68e48709887741a3ff61c568beb9699aaac8.tar.lz nixlib-d77b68e48709887741a3ff61c568beb9699aaac8.tar.xz nixlib-d77b68e48709887741a3ff61c568beb9699aaac8.tar.zst nixlib-d77b68e48709887741a3ff61c568beb9699aaac8.zip |
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')
-rw-r--r-- | nixos/modules/module-list.nix | 1 | ||||
-rw-r--r-- | nixos/modules/programs/liboping.nix | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index a48434641b0c..0a078fb4c794 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -127,6 +127,7 @@ ./programs/java.nix ./programs/kbdlight.nix ./programs/less.nix + ./programs/liboping.nix ./programs/light.nix ./programs/mosh.nix ./programs/mininet.nix 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" ]); + }; +} |