diff options
author | Freya Murphy <freya@freyacat.org> | 2025-06-17 21:57:53 -0400 |
---|---|---|
committer | Freya Murphy <freya@freyacat.org> | 2025-06-17 21:57:53 -0400 |
commit | e0f2eb724245e02cb247b644f0947261d8665318 (patch) | |
tree | 13f929df40059d37165cbe46be95a6404a1bbecb /programs/gpg/default.nix | |
parent | refactor styles to new color scheme basis (diff) | |
download | dotfiles-nix-e0f2eb724245e02cb247b644f0947261d8665318.tar.gz dotfiles-nix-e0f2eb724245e02cb247b644f0947261d8665318.tar.bz2 dotfiles-nix-e0f2eb724245e02cb247b644f0947261d8665318.zip |
remove nix dir and move out all sub modules
Diffstat (limited to 'programs/gpg/default.nix')
-rw-r--r-- | programs/gpg/default.nix | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/programs/gpg/default.nix b/programs/gpg/default.nix new file mode 100644 index 0000000..e45617d --- /dev/null +++ b/programs/gpg/default.nix @@ -0,0 +1,36 @@ +{ 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; + }; + + }; + + # yubikey support + services = { + pcscd.enable = true; + udev.packages = with pkgs; [ + yubikey-personalization + ]; + }; +} |