diff options
Diffstat (limited to 'home/gpg.nix')
-rw-r--r-- | home/gpg.nix | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/home/gpg.nix b/home/gpg.nix new file mode 100644 index 0000000..a2deed2 --- /dev/null +++ b/home/gpg.nix @@ -0,0 +1,31 @@ +{ + config, + lib, + pkgs, + ... +}: let + keysDir = ../files/keys; + keys = lib.attrsets.mapAttrsToList (name: type: "${keysDir}/${name}") (builtins.readDir keysDir); + gpgKeys = builtins.filter (path: lib.strings.hasSuffix "asc" path) keys; +in { + home-manager.users.${config.user} = { + # install keys into gpg keyring + programs.gpg = { + enable = true; + publicKeys = + map (path: { + source = path; + trust = 5; + }) + gpgKeys; + }; + + # global gpg agent + services.gpg-agent = { + enable = true; + enableExtraSocket = true; + enableSshSupport = true; + pinentry.package = pkgs.pinentry-curses; + }; + }; +} |