summaryrefslogtreecommitdiff
path: root/email/gmail.nix
diff options
context:
space:
mode:
Diffstat (limited to 'email/gmail.nix')
-rw-r--r--email/gmail.nix74
1 files changed, 63 insertions, 11 deletions
diff --git a/email/gmail.nix b/email/gmail.nix
index 43be078..760532b 100644
--- a/email/gmail.nix
+++ b/email/gmail.nix
@@ -1,8 +1,7 @@
{
- flake,
+ inputs,
config,
pkgs,
- home-manager,
...
}: {
accounts.email = {
@@ -22,9 +21,10 @@
neomutt = {
enable = true;
sendMailCommand = "msmtp -a gmail";
- mailboxName = "=== gmail ===";
+ mailboxName = "=== mike1994vink ===";
extraConfig = ''
set spoolfile='Inbox'
+ unvirtual-mailboxes *
'';
};
mbsync = {
@@ -49,14 +49,66 @@
neomutt = {
enable = true;
virtualMailboxes = [
- { name = "Inbox"; query = "tag:inbox"; }
- { name = "Archive"; query = "tag:archive"; }
- { name = "Sent"; query = "tag:sent"; }
- { name = "Spam"; query = "tag:spam"; }
- { name = "Trash"; query = "tag:trash"; }
- { name = "Jobs"; query = "tag:jobs"; }
- { name = "Houses"; query = "tag:houses"; }
- { name = "Development"; query = "tag:dev"; }
+ { name = "Inbox"; query = "folder:/gmail/ tag:inbox"; }
+ { name = "Archive"; query = "folder:/gmail/ tag:archive"; }
+ { name = "Sent"; query = "folder:/gmail/ tag:sent"; }
+ { name = "Spam"; query = "folder:/gmail/ tag:spam"; }
+ { name = "Trash"; query = "folder:/gmail/ tag:trash"; }
+ { name = "Jobs"; query = "folder:/gmail/ tag:jobs"; }
+ { name = "Houses"; query = "folder:/gmail/ tag:houses"; }
+ { name = "Development"; query = "folder:/gmail/ tag:dev"; }
+ ];
+ };
+ };
+ };
+ family = {
+ primary = false;
+ realName = "Natalia & Mike Vink";
+ userName = "natalia.mike.vink@gmail.com";
+ address = "natalia.mike.vink@gmail.com";
+ passwordCommand = ["${pkgs.pass}/bin/pass" "personal/neomutt-family"];
+ imap = { host = "imap.gmail.com"; port = 993; tls = { enable = true; }; };
+ smtp = { host = "smtp.gmail.com"; port = 587; tls = { enable = true; useStartTls = true; }; };
+ msmtp = {
+ enable = true;
+ };
+ neomutt = {
+ enable = true;
+ sendMailCommand = "msmtp -a gmail";
+ mailboxName = "=== family ===";
+ extraConfig = ''
+ set spoolfile='Inbox'
+ unvirtual-mailboxes *
+ '';
+ };
+
+ mbsync = {
+ enable = true;
+ create = "both"; remove = "both"; expunge = "both";
+ groups = {
+ gmail = {
+ channels = {
+ Inbox = { farPattern = "INBOX"; nearPattern = "INBOX"; extraConfig = { Create = "Near"; Expunge = "Both"; }; };
+ Archive = { farPattern = "[Gmail]/All Mail"; nearPattern = "Archive"; extraConfig = { Create = "Near"; Expunge = "Both"; }; };
+ Spam = { farPattern = "[Gmail]/Spam"; nearPattern = "Spam"; extraConfig = { Create = "Near"; Expunge = "Both"; }; };
+ Trash = { farPattern = "[Gmail]/Bin"; nearPattern = "Trash"; extraConfig = { Create = "Near"; Expunge = "Both"; }; };
+ Important = { farPattern = "[Gmail]/Important"; nearPattern = "Important"; extraConfig = { Create = "Near"; Expunge = "Both"; }; };
+ Sent = { farPattern = "[Gmail]/Sent Mail"; nearPattern = "Sent"; extraConfig = { Create = "Near"; Expunge = "Both"; }; };
+ FarDrafts = { farPattern = "[Gmail]/Drafts"; nearPattern = "FarDrafts"; extraConfig = { Create = "Near"; Expunge = "Both"; }; };
+ };
+ };
+ };
+ };
+ notmuch = {
+ enable = true;
+ neomutt = {
+ enable = true;
+ virtualMailboxes = [
+ { name = "Inbox"; query = "folder:/family/ tag:inbox"; }
+ { name = "Archive"; query = "folder:/family/ tag:archive"; }
+ { name = "Sent"; query = "folder:/family/ tag:sent"; }
+ { name = "Spam"; query = "folder:/family/ tag:spam"; }
+ { name = "Trash"; query = "folder:/family/ tag:trash"; }
];
};
};