Merge commit 'efcef47c37' into user

This commit is contained in:
Alejandro Soto 2026-03-23 19:25:02 -06:00
commit cf2823d14e
5 changed files with 44 additions and 43 deletions

View file

@ -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

View file

@ -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";
};
};
}

View file

@ -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 =

View file

@ -2,14 +2,10 @@
callPackage,
lib,
mirror ? null,
vendor ? "idopte",
}: let
releases = lib.mapAttrs resolveRelease (import ./releases.nix).${vendor};
latest = "deb64-rev26.2";
resolveRelease = name: release:
if builtins.isString release
then releases.${release}
else release // {name = name;};
releases = lib.mapAttrs (name: release: release // {name = name;}) (import ./releases.nix);
overrideUnwrapped = default: new: let
args = default // new;
@ -23,7 +19,7 @@
pkgsForRelease = release: let
inherit (unwrapped) card-driver bccr-cacerts;
unwrapped = overrideUnwrapped {inherit mirror release vendor;} {};
unwrapped = overrideUnwrapped {inherit mirror release;} {};
pkcs11-module = "${card-driver.lib}/${card-driver.pkcs11-path}";
in {
inherit card-driver bccr-cacerts pkcs11-module;
@ -33,4 +29,4 @@
firmador = callPackage ./firmador.nix {inherit pkcs11-module;};
};
in
lib.mapAttrs (_: pkgsForRelease) releases
lib.mapAttrs (_: pkgsForRelease) (releases // {latest = releases.${latest};})

View file

@ -27,7 +27,7 @@ in
./0001-Remove-CheckUpdatePlugin-from-default-list.patch
];
mvnHash = "sha256-QDjhwrKZK/cEQxRYUM+z1zMCNrTHyxRqAhUfNtubhhI=";
mvnHash = "sha256-iqooTe8xTrkG0JxJXlAMHExt6D8n+msB/VrCNrSJ10c=";
nativeBuildInputs = [
makeWrapper