nixos-config/user/gpg.nix
2024-05-31 11:41:21 -03:00

49 lines
1 KiB
Nix

{
config,
pkgs,
lib,
...
}:
{
config = {
services.gpg-agent = {
enable = true;
defaultCacheTtl = 604800;
maxCacheTtl = 604800;
pinentryPackage = pkgs.pinentry-curses;
extraConfig = ''
allow-preset-passphrase
'';
};
systemd.user.services = {
gpg_unlock = {
Unit = {
Description = "Unlock gpg keyring";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
};
Service = {
ExecStart = "${pkgs._gpg-unlock}/bin/_gpg-unlock";
};
};
};
systemd.user.timers = {
gpg_unlock = {
Unit = {
Description = "Unlock gpg keyring";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
};
Timer = {
OnBootSec = "0";
OnUnitActiveSec = "300";
Unit = "gpg_unlock.service";
};
Install = {
WantedBy = [ "sway-session.target" ];
};
};
};
};
}