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