NixOS-Configs/home/common/mail.nix
2024-12-13 11:50:29 -06:00

73 lines
1.7 KiB
Nix

{ config, pkgs, ... }: {
accounts.email.accounts = {
"don@donharper.org" = {
primary = true;
realName = "Don Harper";
userName = "don";
address = "don@donharper.org";
#secondaries = [ "duck@duckland.org" "duckunix@gmail.com" ];
notmuch.enable = true;
};
};
programs.notmuch = {
enable = true;
new = {
tags = [ "unread" ];
ignore = [
".mbsyncstate"
".uidvalidity"
".mbsyncstate.journal"
".mbsyncstate.new"
".mbsyncstate.lock"
];
};
extraConfig = { database = { path = "/home/don/Mail"; }; };
};
xdg.configFile."neomutt/neomuttrc".source = ./files/neomutt/neomuttrc;
xdg.configFile."neomutt/mailcap".source = ./files/neomutt/mailcap;
home.file.".signature".text = ''
--
Don Harper
'';
systemd.user = {
timers.mbsync = {
Timer = {
OnUnitActiveSec = "5m";
AccuracySec = "1m";
};
Install = { WantedBy = [ "timers.target" ]; };
};
services.mbsync = {
Service = {
ExecStart = "/home/don/bin/mbsync";
Environment = "PATH=/run/current-system/sw/bin";
Type = "oneshot";
};
Install = { WantedBy = [ "mbsync.timer" ]; };
};
services."mbsync-all" = {
Service = {
ExecStart = "/home/don/bin/mbsync gmail";
Environment = "PATH=/run/current-system/sw/bin";
Type = "oneshot";
};
Install = { WantedBy = [ "mbsync-all.timer" ]; };
};
timers."mbsync-all" = {
Timer = {
AccuracySec = "1m";
OnUnitActiveSec = "14m";
};
Install = { WantedBy = [ "timers.target" ]; };
};
};
}