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