diff options
| author | Mike Vink <ivi@vinkies.net> | 2023-10-22 12:18:05 +0200 |
|---|---|---|
| committer | Mike Vink <ivi@vinkies.net> | 2023-10-22 12:18:05 +0200 |
| commit | b52eb0ddce7c8a476351f38fedfea92e83b23f18 (patch) | |
| tree | 87b01873a5ba33b0326b9ee63e043fd97723062e /profiles/email/server.nix | |
| parent | bc2c557650e076aaf6d47bbc99bc67f99b26aa27 (diff) | |
fix emails to gmail
Diffstat (limited to 'profiles/email/server.nix')
| -rw-r--r-- | profiles/email/server.nix | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/profiles/email/server.nix b/profiles/email/server.nix new file mode 100644 index 0000000..9a5e16c --- /dev/null +++ b/profiles/email/server.nix @@ -0,0 +1,59 @@ +{ + inputs, + config, + pkgs, + lib, + ... +}: with lib; { + hm = { + accounts.email = { + accounts = { + ${ivi.username} = { + realName = "${ivi.realName}"; + userName = "${ivi.email}"; + address = "${ivi.email}"; + passwordCommand = ["${pkgs.pass}/bin/pass" "personal/mailserver"]; + imap = { host = "${ivi.domain}"; port = 993; tls = { enable = true; }; }; + smtp = { host = "${ivi.domain}"; port = 587; tls = { enable = true; useStartTls = true; }; }; + msmtp = { + enable = true; + }; + neomutt = { + enable = true; + sendMailCommand = "msmtp -a ${ivi.username}"; + mailboxName = "=== ${ivi.username} ==="; + extraConfig = '' + set spoolfile='Inbox' + unvirtual-mailboxes * + ''; + }; + mbsync = { + enable = true; + create = "both"; remove = "both"; expunge = "both"; + groups = { + ${ivi.username} = { + channels = { + All = { patterns = ["*"]; extraConfig = { Create = "Both"; Expunge = "Both"; Remove = "Both"; }; }; + }; + }; + }; + }; + notmuch = { + enable = true; + neomutt = { + enable = true; + virtualMailboxes = [ + { name = "Inbox"; query = "folder:/${ivi.username}/ tag:inbox"; } + { name = "Sent"; query = "folder:/${ivi.username}/ tag:sent"; } + { name = "Archive"; query = "folder:/${ivi.username}/ tag:archive"; } + { name = "Drafts"; query = "folder:/${ivi.username}/ tag:drafts"; } + { name = "Junk"; query = "folder:/${ivi.username}/ tag:spam"; } + { name = "Trash"; query = "folder:/${ivi.username}/ tag:trash"; } + ]; + }; + }; + }; + }; + }; + }; +} |
