summaryrefslogtreecommitdiff
path: root/trivionomicon/modules
diff options
context:
space:
mode:
Diffstat (limited to 'trivionomicon/modules')
-rw-r--r--trivionomicon/modules/athena-bccr/hm.nix11
-rw-r--r--trivionomicon/modules/athena-bccr/options.nix48
-rw-r--r--trivionomicon/modules/athena-bccr/sys.nix14
3 files changed, 39 insertions, 34 deletions
diff --git a/trivionomicon/modules/athena-bccr/hm.nix b/trivionomicon/modules/athena-bccr/hm.nix
index 683cb4d..df41f12 100644
--- a/trivionomicon/modules/athena-bccr/hm.nix
+++ b/trivionomicon/modules/athena-bccr/hm.nix
@@ -5,11 +5,12 @@
doctrine,
...
}: let
- releases = pkgs.${doctrine.prefix}.athena-bccr.override {
- inherit (cfg) mirror vendor;
- };
-
- athena = releases.${cfg.release};
+ athena =
+ (pkgs.${doctrine.prefix}.athena-bccr.override {
+ inherit (cfg) mirror;
+ }).${
+ cfg.release
+ };
in {
home.packages = [
athena.firmador
diff --git a/trivionomicon/modules/athena-bccr/options.nix b/trivionomicon/modules/athena-bccr/options.nix
index dc4c986..7b6cf93 100644
--- a/trivionomicon/modules/athena-bccr/options.nix
+++ b/trivionomicon/modules/athena-bccr/options.nix
@@ -1,40 +1,42 @@
{lib, ...}:
-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 {
+with lib.types; {
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";
+ };
};
}
diff --git a/trivionomicon/modules/athena-bccr/sys.nix b/trivionomicon/modules/athena-bccr/sys.nix
index 0b4658c..bd7d758 100644
--- a/trivionomicon/modules/athena-bccr/sys.nix
+++ b/trivionomicon/modules/athena-bccr/sys.nix
@@ -6,15 +6,17 @@
doctrine,
...
}: let
- releases = pkgs.${doctrine.prefix}.athena-bccr.override {
- inherit (cfg) mirror vendor;
- };
+ athena =
+ (pkgs.${doctrine.prefix}.athena-bccr.override {
+ inherit (cfg) mirror;
+ }).${
+ cfg.release
+ };
+
+ inherit (athena) vendor;
- athena = releases.${cfg.release};
driver = athena.card-driver.lib;
scmiddleware = "${driver}/lib/SCMiddleware";
-
- inherit (cfg) vendor;
in {
environment = {
etc =