summaryrefslogtreecommitdiff
path: root/nix/modules/home/mbsync.nix
blob: b7c7424e99d456e6022baf7e4f52d835bb9c9c5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{ lib, config, ... }:
{
  programs.mbsync = {
    enable = lib.mkDefault config.monorepo.profiles.email.enable;
    extraConfig = ''
      IMAPAccount ${config.monorepo.vars.internetName}
      Host ${config.monorepo.profiles.email.imapsServer}
      User ${config.monorepo.profiles.email.email}
      PassCmd "cat ${config.sops.secrets.mail.path}"
      Port 993
      TLSType IMAPS
      AuthMechs *
      CertificateFile /etc/ssl/certs/ca-certificates.crt

      IMAPStore ${config.monorepo.vars.internetName}-remote
      Account ${config.monorepo.vars.internetName}

      MaildirStore ${config.monorepo.vars.internetName}-local
      Path ~/email/${config.monorepo.vars.internetName}/
      Inbox ~/email/${config.monorepo.vars.internetName}/INBOX
      SubFolders Verbatim

      Channel ${config.monorepo.vars.internetName} 
      Far :${config.monorepo.vars.internetName}-remote:
      Near :${config.monorepo.vars.internetName}-local:
      Patterns *
      Create Near
      Sync All
      Expunge None
      SyncState *
    '';
  };
}