about summary refs log tree commit diff
path: root/modules/workstation/mail/isync/default.nix
blob: 685951af13e4cc05953894fda692b676a64c376d (plain) (blame)
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
{ config, pkgs, ... }:

let
  maildir = "${config.users.users.qyliss.home}/mail";
  mbsyncrc = pkgs.substituteAll { inherit maildir; src = ./mbsyncrc.in; };
in

{
  systemd.services.mbsync = {
    serviceConfig.Type = "oneshot";
    after = [ "network-online.target" ];
    before = [ "notmuch.service" ];
    requires = [ "network-online.target" ];
    wants = [ "notmuch.service" ];
    serviceConfig.ExecStart = "${pkgs.isync}/bin/mbsync -a -V -c ${mbsyncrc}";
    serviceConfig.User = "qyliss";
  };

  systemd.timers.mbsync = {
    timerConfig.OnCalendar = "*:0/5";
    timerConfig.Persistent = true;
    after = [ "network-online.target" ];
    wantedBy = [ "timers.target" ];
  };
}