1
0
mirror of https://github.com/kmein/niveum synced 2026-03-29 08:41:07 +02:00

feat(mail): server settings in variables

This commit is contained in:
2021-02-07 22:00:32 +01:00
parent 18033c0e54
commit 010d620b76

View File

@@ -12,12 +12,8 @@ let
notmuch.enable = true; notmuch.enable = true;
}; };
# turns out we have to escape $ because, if the password contains a $, it will get interpolated as a variable by the msmtp `passwordeval` which does: `bash -c "COMMAND; echo"` settings = {
pass_ = file: "echo ${lib.escape ["$"] (lib.escapeShellArg (lib.strings.fileContents file))}"; fastmail = {
in
{
fysi = enableDefaults {
primary = false;
smtp = { smtp = {
host = "smtp.fastmail.com"; host = "smtp.fastmail.com";
port = 465; port = 465;
@@ -28,13 +24,8 @@ in
port = 993; port = 993;
tls.enable = true; tls.enable = true;
}; };
userName = "kieran@fysi.tech";
address = "kieran@fysi.tech";
realName = kieran.name;
passwordCommand = pass_ <secrets/mail/fastmail>;
}; };
cock = enableDefaults { cock = {
primary = false;
smtp = { smtp = {
host = "mail.cock.li"; host = "mail.cock.li";
port = 587; port = 587;
@@ -48,10 +39,58 @@ in
port = 993; port = 993;
tls.enable = true; tls.enable = true;
}; };
};
posteo = {
smtp = {
host = "posteo.de";
port = 587;
tls = {
enable = true;
useStartTls = true;
};
};
imap = {
host = "posteo.de";
port = 993;
tls.enable = true;
};
};
hu-berlin = {
smtp = {
host = "mailhost.cms.hu-berlin.de";
port = 25;
tls = {
enable = true;
useStartTls = true;
};
};
imap = {
host = "mailbox.cms.hu-berlin.de";
port = 993;
tls.enable = true;
};
};
};
# turns out we have to escape $ because, if the password contains a $, it will get interpolated as a variable by the msmtp `passwordeval` which does: `bash -c "COMMAND; echo"`
pass_ = file: "echo ${lib.escape ["$"] (lib.escapeShellArg (lib.strings.fileContents file))}";
in
{
fysi = enableDefaults {
primary = false;
userName = "kieran@fysi.tech";
address = "kieran@fysi.tech";
realName = kieran.name;
passwordCommand = pass_ <secrets/mail/fastmail>;
inherit (settings.fastmail) imap smtp;
};
cock = enableDefaults {
primary = false;
userName = "2210@cock.li"; userName = "2210@cock.li";
address = "2210@cock.li"; address = "2210@cock.li";
realName = "2210"; realName = "2210";
passwordCommand = pass_ <secrets/mail/cock>; passwordCommand = pass_ <secrets/mail/cock>;
inherit (settings.cock) imap smtp;
}; };
kieran-gmail = enableDefaults { kieran-gmail = enableDefaults {
primary = false; primary = false;
@@ -81,23 +120,11 @@ in
}; };
posteo = enableDefaults { posteo = enableDefaults {
primary = true; primary = true;
smtp = {
host = "posteo.de";
port = 587;
tls = {
enable = true;
useStartTls = true;
};
};
imap = {
host = "posteo.de";
port = 993;
tls.enable = true;
};
address = "kieran.meinhardt@posteo.net"; address = "kieran.meinhardt@posteo.net";
realName = kieran.name; realName = kieran.name;
userName = "kieran.meinhardt@posteo.net"; userName = "kieran.meinhardt@posteo.net";
passwordCommand = pass_ <secrets/mail/posteo>; passwordCommand = pass_ <secrets/mail/posteo>;
inherit (settings.posteo) imap smtp;
}; };
hu-berlin = enableDefaults { hu-berlin = enableDefaults {
primary = false; primary = false;
@@ -105,19 +132,7 @@ in
realName = kieran.name; realName = kieran.name;
userName = "meinhark"; userName = "meinhark";
passwordCommand = pass_ <secrets/eduroam/password>; passwordCommand = pass_ <secrets/eduroam/password>;
smtp = { inherit (settings.hu-berlin) imap smtp;
host = "mailhost.cms.hu-berlin.de";
port = 25;
tls = {
enable = true;
useStartTls = true;
};
};
imap = {
host = "mailbox.cms.hu-berlin.de";
port = 993;
tls.enable = true;
};
}; };
hu-berlin-work = enableDefaults { hu-berlin-work = enableDefaults {
primary = false; primary = false;
@@ -125,18 +140,6 @@ in
realName = kieran.name; realName = kieran.name;
userName = "meinhaki"; userName = "meinhaki";
passwordCommand = pass_ <secrets/mail/meinhaki>; passwordCommand = pass_ <secrets/mail/meinhaki>;
smtp = { inherit (settings.hu-berlin) imap smtp;
host = "mailhost.cms.hu-berlin.de";
port = 25;
tls = {
enable = true;
useStartTls = true;
};
};
imap = {
host = "mailbox.cms.hu-berlin.de";
port = 993;
tls.enable = true;
};
}; };
} }