fix: programs.gpg-agent do not support darwin, running gnupg agent at system level

This commit is contained in:
Ryan Yin
2024-01-10 13:21:05 +08:00
parent 228a7099d0
commit f166761af7
3 changed files with 25 additions and 16 deletions

View File

@@ -1,35 +1,30 @@
{pkgs, config, mysecrets, ...}: {
{
config,
mysecrets,
...
}: {
programs.gpg = {
enable = true;
homedir = "${config.home.homeDirectory}/.gnupg";
# $GNUPGHOME/trustdb.gpg stores all the trust level you specified in `programs.gpg.publicKeys` option.
#
#
# If set `mutableTrust` to false, the path $GNUPGHOME/trustdb.gpg will be overwritten on each activation.
# Thus we can only update trsutedb.gpg via home-manager.
mutableTrust = true;
# $GNUPGHOME/pubring.kbx stores all the public keys you specified in `programs.gpg.publicKeys` option.
#
#
# If set `mutableKeys` to false, the path $GNUPGHOME/pubring.kbx will become an immutable link to the Nix store, denying modifications.
# Thus we can only update pubring.kbx via home-manager
mutableKeys = true;
publicKeys = [
# https://www.gnupg.org/gph/en/manual/x334.html
{ source = "${mysecrets}/public/ryan4yin-gpg-keys.pub"; trust = 5; } # ultimate trust, my own keys.
{
source = "${mysecrets}/public/ryan4yin-gpg-keys.pub";
trust = 5;
} # ultimate trust, my own keys.
];
settings = {
};
};
home.packages = with pkgs; [
pinentry-curses
];
services.gpg-agent = {
enable = true;
pinentryFlavor = "curses";
enableSshSupport = false;
grabKeyboardAndMouse = true;
enableScDaemon = false; # enable Smartcard daemon for the GnuPG system
};
}