42 lines
1 KiB
Nix
42 lines
1 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
xdg.configFile."pass-git-helper/git-pass-mapping.ini".source =
|
|
./git-pass-mapping.ini;
|
|
programs = {
|
|
gpg.enable = true;
|
|
password-store = {
|
|
enable = true;
|
|
package =
|
|
pkgs.pass-nodmenu.withExtensions
|
|
(exts: with exts; [pass-otp pass-update pass-audit pass-import]);
|
|
settings = {
|
|
PASSWORD_STORE_DIR = "${config.home.homeDirectory}/.password-store";
|
|
PASSWORD_STORE_ENABLE_EXTENSIONS = "true";
|
|
};
|
|
};
|
|
git.extraConfig.credential = {
|
|
helper = "${pkgs.pass-git-helper}/bin/pass-git-helper";
|
|
};
|
|
};
|
|
services = {
|
|
gpg-agent = rec {
|
|
enable = true;
|
|
maxCacheTtl = 86400;
|
|
defaultCacheTtl = maxCacheTtl;
|
|
defaultCacheTtlSsh = maxCacheTtl;
|
|
pinentryFlavor = lib.mkDefault "curses";
|
|
extraConfig = ''
|
|
no-allow-external-cache
|
|
'';
|
|
};
|
|
git-sync.repositories.password-store = {
|
|
path = "${config.home.homeDirectory}/.password-store";
|
|
uri = "git+https://git.xenia.me.uk/xenia/pass.git";
|
|
};
|
|
};
|
|
}
|