aboutsummaryrefslogtreecommitdiffstats
path: root/modules/security/gopass/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/security/gopass/default.nix')
-rw-r--r--modules/security/gopass/default.nix13
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/security/gopass/default.nix b/modules/security/gopass/default.nix
index e78e595..123b33f 100644
--- a/modules/security/gopass/default.nix
+++ b/modules/security/gopass/default.nix
@@ -34,6 +34,9 @@
};
};
};
+ creation-templates = {
+ enable = lib.mkEnableOption "Enables gopass entry creation templates. New entry creation templates for gopass new or gopass create commands.";
+ };
};
config = lib.mkMerge [
@@ -83,6 +86,16 @@
source = ../../../assets/icons/apps/gopass.svg;
};
+ home.activation.copyCreationTemplatesForGopass =
+ lib.mkIf config.security.gopass.creation-templates.enable
+ (
+ lib.hm.dag.entryAfter [ "writeBoundary" ] ''
+ $DRY_RUN_CMD mkdir -p $VERBOSE_ARG "${config.programs.password-store.settings.PASSWORD_STORE_DIR}/.gopass/create"
+ $DRY_RUN_CMD rm -rf ${config.programs.password-store.settings.PASSWORD_STORE_DIR}/.gopass/create
+ $DRY_RUN_CMD cp -r $VERBOSE_ARG --no-preserve=mode ${./creation-templates} "${config.programs.password-store.settings.PASSWORD_STORE_DIR}/.gopass/create"
+ ''
+ );
+
xdg.desktopEntries."gopass" = {
name = "gopass";
exec = "${lib.getExe config.terminal.kitty.package} --class gopass -e ${lib.getExe config.security.gopass.package}";