change notification app for niri from mako to swaync add deno as json/jsonc formatter in helix add wluma to control backlight add taplo as toml formatter refactor waybar, and use waybar default config change gpg pinentry to shell script which can determine which session type is used fix error when SSH_CLIENT is unbind in pinentry script fix pinentry selector in pkgs
51 lines
1 KiB
Nix
51 lines
1 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
outputs,
|
|
...
|
|
}:
|
|
{
|
|
options = {
|
|
youthlic.programs.gpg = {
|
|
enable = lib.mkOption {
|
|
type = lib.types.bool;
|
|
default = true;
|
|
example = false;
|
|
description = ''
|
|
whether enable gpg
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
config =
|
|
let
|
|
cfg = config.youthlic.programs.gpg;
|
|
in
|
|
lib.mkIf cfg.enable {
|
|
services.gpg-agent = lib.mkMerge [
|
|
{
|
|
enable = true;
|
|
enableSshSupport = true;
|
|
pinentryPackage = outputs.packages."${pkgs.system}".pinentry-selector;
|
|
}
|
|
(lib.mkIf config.youthlic.programs.fish.enable {
|
|
enableFishIntegration = true;
|
|
})
|
|
(lib.mkIf config.youthlic.programs.bash.enable {
|
|
enableBashIntegration = true;
|
|
})
|
|
];
|
|
programs.gpg = {
|
|
enable = true;
|
|
mutableKeys = true;
|
|
mutableTrust = true;
|
|
publicKeys = [
|
|
{
|
|
source = ./public-key.txt;
|
|
trust = "ultimate";
|
|
}
|
|
];
|
|
};
|
|
};
|
|
}
|