blob: 969403d86f68ee028e970a9d3f38f22b6ed29520 (
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
|
{
config,
lib,
...
}:
let
mailDir = "${config.home.homeDirectory}/.local/share/mail";
in
{
options.communication.email = {
enable = lib.mkEnableOption "Email suite (mbsync + notmuch)";
accounts = lib.mkOption {
type = lib.types.attrsOf lib.types.anything;
default = { };
description = "Email accounts. Each attribute name is an account identifier.";
};
};
config = lib.mkIf config.communication.email.enable {
programs.mbsync.enable = true;
programs.notmuch.enable = true;
accounts.email.maildirBasePath = mailDir;
accounts.email.accounts = config.communication.email.accounts;
home.sessionVariables.MAILDIR = mailDir;
};
}
|