aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/home-manager/modules/programs/git.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/home-manager/modules/programs/git.nix')
-rw-r--r--infra/libkookie/home-manager/modules/programs/git.nix34
1 files changed, 20 insertions, 14 deletions
diff --git a/infra/libkookie/home-manager/modules/programs/git.nix b/infra/libkookie/home-manager/modules/programs/git.nix
index 4b2912e65d79..d5f1bfeea6cf 100644
--- a/infra/libkookie/home-manager/modules/programs/git.nix
+++ b/infra/libkookie/home-manager/modules/programs/git.nix
@@ -276,21 +276,27 @@ in {
genIdentity = name: account:
with account;
- nameValuePair "sendemail.${name}" ({
- smtpEncryption = if smtp.tls.enable then
- (if smtp.tls.useStartTls
- || versionOlder config.home.stateVersion "20.09" then
- "tls"
- else
- "ssl")
- else
- "";
- smtpServer = smtp.host;
- smtpUser = userName;
+ nameValuePair "sendemail.${name}" (if account.msmtp.enable then {
+ smtpServer = "${pkgs.msmtp}/bin/msmtp";
+ envelopeSender = "auto";
from = address;
- } // optionalAttrs (smtp.port != null) {
- smtpServerPort = smtp.port;
- });
+ } else
+ {
+ smtpEncryption = if smtp.tls.enable then
+ (if smtp.tls.useStartTls
+ || versionOlder config.home.stateVersion "20.09" then
+ "tls"
+ else
+ "ssl")
+ else
+ "";
+ smtpSslCertPath = mkIf smtp.tls.enable smtp.tls.certificatesFile;
+ smtpServer = smtp.host;
+ smtpUser = userName;
+ from = address;
+ } // optionalAttrs (smtp.port != null) {
+ smtpServerPort = smtp.port;
+ });
in mapAttrs' genIdentity
(filterAttrs hasSmtp config.accounts.email.accounts);
}