grafana-alloy: don't build the frontend twice
[NixPkgs.git] / nixos / modules / programs / soundmodem.nix
blob5f57e24a4524a6f669b5c40b0ddb264e5a856e6e
1 { config, lib, pkgs, ... }:
3 let
4   cfg = config.programs.soundmodem;
5 in
7   options = {
8     programs.soundmodem = {
9       enable = lib.mkOption {
10         type = lib.types.bool;
11         default = false;
12         description = ''
13           Whether to add Soundmodem to the global environment and configure a
14           wrapper for 'soundmodemconfig' for users in the 'soundmodem' group.
15         '';
16       };
17       package = lib.mkPackageOption pkgs "soundmodem" { };
18     };
19   };
21   config = lib.mkIf cfg.enable {
22     environment.systemPackages = [ cfg.package ];
23     users.groups.soundmodem = { };
25     security.wrappers.soundmodemconfig = {
26       source = "${cfg.package}/bin/soundmodemconfig";
27       owner = "root";
28       group = "soundmodem";
29       permissions = "u+rx,g+x";
30     };
31   };