[General+Packages] Add pinentry dynamic switcher wrapper

Dynamically accomodate different desktops
This commit is contained in:
Antoine Viallon 2023-04-04 22:47:59 +02:00
parent 50f523ad0b
commit 3fa8298db2
Signed by: aviallon
GPG key ID: 186FC35EDEB25716
2 changed files with 49 additions and 0 deletions

View file

@ -108,6 +108,19 @@ in
enable = true;
enableSSHSupport = true;
};
systemd.user.services.gpg-agent = let
pinentrySwitcher = pkgs.callPackage ./packages/pinentry.nix {};
cfg = config.programs.gnupg;
in {
restartTriggers = [ pinentrySwitcher ];
restartIfChanged = true;
serviceConfig.ExecStart = [ "" ''
${cfg.package}/bin/gpg-agent --supervised \
--pinentry-program ${pinentrySwitcher}/bin/pinentry
'' ];
};
documentation.man.generateCaches = true;