{
  pkgs,
  config,
  lib,
  ...
}:
with lib;
let
  cfg = config.eboskma.programs.gpg;
in
{
  options.eboskma.programs.gpg = {
    enable = mkEnableOption "enable gpg";
  };

  config = mkIf cfg.enable {
    home.packages = with pkgs; [ pinentry-gnome3 ];

    programs.gpg = {
      enable = true;
    };

    services.gpg-agent = {
      enable = true;
      pinentryPackage = pkgs.pinentry-gnome3;
      # enableSshSupport = true;
      # defaultCacheTtlSsh = 14400;
      # maxCacheTtlSsh = 14400;
      extraConfig = ''
        allow-loopback-pinentry
      '';
    };
  };
}