1{ config, lib, pkgs, ... }:
2
3with lib;
4
5let
6 cfg = config.programs.digitalbitbox;
7in
8
9{
10 options.programs.digitalbitbox = {
11 enable = mkOption {
12 type = types.bool;
13 default = false;
14 description = lib.mdDoc ''
15 Installs the Digital Bitbox application and enables the complementary hardware module.
16 '';
17 };
18
19 package = mkOption {
20 type = types.package;
21 default = pkgs.digitalbitbox;
22 defaultText = literalExpression "pkgs.digitalbitbox";
23 description = lib.mdDoc "The Digital Bitbox package to use. This can be used to install a package with udev rules that differ from the defaults.";
24 };
25 };
26
27 config = mkIf cfg.enable {
28 environment.systemPackages = [ cfg.package ];
29 hardware.digitalbitbox = {
30 enable = true;
31 package = cfg.package;
32 };
33 };
34
35 meta = {
36 doc = ./doc.xml;
37 maintainers = with lib.maintainers; [ vidbina ];
38 };
39}