at 24.11-pre 788 B view raw
1{ config, lib, pkgs, ... }: 2 3let 4 cfg = config.programs.soundmodem; 5in 6{ 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 }; 20 21 config = lib.mkIf cfg.enable { 22 environment.systemPackages = [ cfg.package ]; 23 users.groups.soundmodem = { }; 24 25 security.wrappers.soundmodemconfig = { 26 source = "${cfg.package}/bin/soundmodemconfig"; 27 owner = "root"; 28 group = "soundmodem"; 29 permissions = "u+rx,g+x"; 30 }; 31 }; 32}