86 lines
2.1 KiB
Nix
Executable File
86 lines
2.1 KiB
Nix
Executable File
#https://xeiaso.net/talks/asg-2023-nixos/ example
|
|
{ lib, config, pkgs, ... }:
|
|
let
|
|
isEnabled =
|
|
config.azos.mail.enable;
|
|
default_account_params = {
|
|
realName = "Aner Zakobar";
|
|
notmuch.enable = true;
|
|
};
|
|
default_lieer_params = default_account_params // {
|
|
lieer.enable = true;
|
|
lieer.sync.enable = true;
|
|
flavor = "gmail.com";
|
|
};
|
|
default_smtp = {
|
|
tls = {
|
|
enable = true;
|
|
certificatesFile = "/etc/ssl/certs/ca-certificates.crt";
|
|
};
|
|
};
|
|
default_gmail_smtp = default_smtp // {
|
|
host = "smtp.gmail.com";
|
|
};
|
|
in {
|
|
options.azos.mail.enable = lib.mkOption {
|
|
default = true;
|
|
example = true;
|
|
type = lib.types.bool;
|
|
};
|
|
|
|
config = lib.mkIf isEnabled {
|
|
programs= {
|
|
notmuch = {
|
|
enable = true;
|
|
hooks = {
|
|
preNew = "mbsync -a && gmi sync";
|
|
};
|
|
};
|
|
mbsync = {
|
|
enable = true;
|
|
};
|
|
msmtp = {
|
|
enable = true;
|
|
};
|
|
lieer = {
|
|
enable = true;
|
|
};
|
|
};
|
|
accounts.email.accounts = {
|
|
gmail = default_lieer_params // {
|
|
address = "anerisgreat@gmail.com";
|
|
userName = "anerisgreat";
|
|
smtp = default_gmail_smtp;
|
|
passwordCommand = "pass gmail.com/mbsync-anerz";
|
|
};
|
|
bgu = default_lieer_params // {
|
|
address = "anerz@post.bgu.ac.il";
|
|
userName = "anerz@post.bgu.ac.il";
|
|
smtp = default_gmail_smtp;
|
|
passwordCommand = "pass post.bgu.ac.il/mbsync-anerz";
|
|
};
|
|
zakobar = default_account_params // {
|
|
address = "aner@zakobar.com";
|
|
msmtp.enable = true;
|
|
|
|
primary = true;
|
|
userName = "aner@zakobar.com";
|
|
imap = {
|
|
host = "mail.privateemail.com";
|
|
};
|
|
mbsync = {
|
|
enable = true;
|
|
create = "maildir";
|
|
};
|
|
|
|
smtp = default_smtp // {
|
|
port = 587;
|
|
host = "mail.privateemail.com";
|
|
};
|
|
passwordCommand = "pass zakobar.com/mail/aner";
|
|
};
|
|
|
|
};
|
|
};
|
|
}
|