mirror of
https://github.com/nix-community/home-manager.git
synced 2025-11-08 19:46:05 +01:00
The Git module now supports SSH and X.509 signing in addition to OpenPGP/GnuPG, via setting the `programs.git.signing.format` option. It defaults to `openpgp` for now as a backwards compatibility measure, but I feel like we shouldn't enforce GPG as the default on everyone, especially for people who use SSH signing like me. Accordingly, `programs.git.signing.gpgPath` has been renamed to `programs.git.signing.signer`, as now the signer binary is not restricted to GnuPG. Users should only get a warning and everything should continue to work. Fixes #4221, supersedes #4235 Co-authored-by: Mario Rodas <marsam@users.noreply.github.com> Co-authored-by: Sumner Evans <me@sumnerevans.com> Co-authored-by: Leah Amelia Chen <hi@pluie.me>
22 lines
501 B
Nix
22 lines
501 B
Nix
{
|
|
programs.git = {
|
|
enable = true;
|
|
userName = "John Doe";
|
|
userEmail = "user@example.org";
|
|
|
|
signing = {
|
|
signer = "path-to-ssh";
|
|
format = "ssh";
|
|
key =
|
|
"ssh-ed25519 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
|
|
signByDefault = true;
|
|
};
|
|
};
|
|
|
|
nmt.script = ''
|
|
assertFileExists home-files/.config/git/config
|
|
assertFileContent home-files/.config/git/config ${
|
|
./git-with-signing-key-id-expected.conf
|
|
}
|
|
'';
|
|
}
|