1{ config, pkgs, lib, ... }:
2
3let cfg = config.programs.noisetorch;
4in
5{
6 options.programs.noisetorch = {
7 enable = lib.mkEnableOption "noisetorch (+ setcap wrapper), a virtual microphone device with noise suppression";
8
9 package = lib.mkPackageOption pkgs "noisetorch" { };
10 };
11
12 config = lib.mkIf cfg.enable {
13 security.wrappers.noisetorch = {
14 owner = "root";
15 group = "root";
16 capabilities = "cap_sys_resource=+ep";
17 source = "${cfg.package}/bin/noisetorch";
18 };
19 environment.systemPackages = [ cfg.package ];
20 };
21}