Make the pass extensions configurable

This commit is contained in:
Oliver Davies 2025-04-23 19:50:10 +01:00
parent 899dfb9f21
commit 547895664b
2 changed files with 19 additions and 10 deletions

View file

@ -13,7 +13,15 @@
];
nixosModules = {
cli.password-store.enable = true;
cli.password-store = {
enable = true;
extensions = with pkgs.passExtensions; [
pass-audit
pass-otp
pass-update
];
};
core = {
bluetooth.enable = true;

View file

@ -11,20 +11,21 @@ let
cfg = config.nixosModules.cli.password-store;
in
{
options.nixosModules.cli.password-store.enable = mkEnableOption "Enable pass";
options.nixosModules.cli.password-store = {
enable = mkEnableOption "Enable pass";
extensions = mkOption {
default = [ ];
type = types.listOf types.package;
description = "pass extensions to install.";
};
};
config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [
passmenu-otp
(pass.withExtensions (
e: with e; [
passExtensions.pass-audit
passExtensions.pass-import
passExtensions.pass-otp
passExtensions.pass-update
]
))
(pass.withExtensions (e: with e; cfg.extensions))
];
};
}