summaryrefslogtreecommitdiff
path: root/trivionomicon/modules/athena-bccr
diff options
context:
space:
mode:
authorAlejandro Soto <alejandro@34project.org>2026-03-23 19:25:02 -0600
committerAlejandro Soto <alejandro@34project.org>2026-03-23 19:25:02 -0600
commit5e95091f5347c8b08109ed75e05400685ac98f12 (patch)
treec2fefb4f550aaf6b9056de8a5324ef7836427a90 /trivionomicon/modules/athena-bccr
parent9717852abe375eee25a56f05d9b70e5417ef7ac3 (diff)
parentd57db8081513a08d72a3a3db0bbf2d5c39657afe (diff)
Merge commit 'efcef47c37e27be128082fa9585b8fa1be3c4dd5' into master
Diffstat (limited to 'trivionomicon/modules/athena-bccr')
-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 =