1{
2 config,
3 lib,
4 pkgs,
5 ...
6}:
7
8let
9 cfg = config.programs.dmrconfig;
10
11in
12{
13 meta.maintainers = [ ];
14
15 ###### interface
16 options = {
17 programs.dmrconfig = {
18 enable = lib.mkOption {
19 default = false;
20 type = lib.types.bool;
21 description = ''
22 Whether to configure system to enable use of dmrconfig. This
23 enables the required udev rules and installs the program.
24 '';
25 relatedPackages = [ "dmrconfig" ];
26 };
27
28 package = lib.mkPackageOption pkgs "dmrconfig" { };
29 };
30 };
31
32 ###### implementation
33 config = lib.mkIf cfg.enable {
34 environment.systemPackages = [ cfg.package ];
35 services.udev.packages = [ cfg.package ];
36 };
37}