summaryrefslogtreecommitdiff
path: root/trivionomicon/modules/athena-bccr/options.nix
diff options
context:
space:
mode:
Diffstat (limited to 'trivionomicon/modules/athena-bccr/options.nix')
-rw-r--r--trivionomicon/modules/athena-bccr/options.nix48
1 files changed, 23 insertions, 25 deletions
diff --git a/trivionomicon/modules/athena-bccr/options.nix b/trivionomicon/modules/athena-bccr/options.nix
index 7b6cf93..dc4c986 100644
--- a/trivionomicon/modules/athena-bccr/options.nix
+++ b/trivionomicon/modules/athena-bccr/options.nix
@@ -1,42 +1,40 @@
{lib, ...}:
-with lib.types; {
+with lib.types; let
+ mirror = lib.mkOption {
+ type = nullOr str;
+ default = null;
+ description = "release zip mirror base URL, if null then the release zip must be manually added to the Nix store";
+ };
+
+ release = lib.mkOption {
+ type = str;
+ default = "latest";
+ description = "pinned athena-bccr release tag";
+ };
+
+ vendor = lib.mkOption {
+ type = enum ["athena" "idopte"];
+ default = "idopte";
+ description = "driver dvendor";
+ };
+in {
hm = {
+ inherit mirror release vendor;
+
gaudiHash = lib.mkOption {
type = nullOr str;
default = null;
description = "hash of the Gaudi client";
};
-
- mirror = lib.mkOption {
- type = nullOr str;
- default = null;
- description = "release zip mirror base URL, if null then the release zip must be manually added to the Nix store";
- };
-
- release = lib.mkOption {
- type = str;
- default = "latest";
- description = "pinned athena-bccr release tag";
- };
};
sys = {
+ inherit mirror release vendor;
+
group = lib.mkOption {
type = str;
default = "users";
description = "user group with full access to the smartcard reader";
};
-
- mirror = lib.mkOption {
- type = nullOr str;
- default = null;
- description = "release zip mirror base URL, if null then the release zip must be manually added to the Nix store";
- };
-
- release = lib.mkOption {
- type = str;
- default = "latest";
- description = "pinned athena-bccr release tag";
- };
};
}