From d8ed9a41edc7d6725a8c2b449122f302519f01c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kier=C3=A1n=20Meinhardt?= Date: Sat, 17 Oct 2020 22:27:22 +0200 Subject: [PATCH] feat(mail): muchsync --- configs/mail.nix | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/configs/mail.nix b/configs/mail.nix index 2c0622d..b65b9e6 100644 --- a/configs/mail.nix +++ b/configs/mail.nix @@ -56,8 +56,13 @@ in { wants = [ "network-online.target" ]; startAt = "*:0/15"; serviceConfig.User = "kfm"; + serviceConfig.Type = "oneshot"; environment.NOTMUCH_CONFIG = config.home-manager.users.me.home.sessionVariables.NOTMUCH_CONFIG; - script = "${mail-sync}/bin/mail-sync"; + script = '' + export PATH=${lib.makeBinPath [ pkgs.muchsync pkgs.notmuch mail-sync ]} + mail-sync + muchsync + ''; }; environment.systemPackages = [ @@ -67,6 +72,8 @@ in { mail-sync + pkgs.muchsync + (pkgs.writers.writeDashBin "mua" '' if [ $# -eq 0 ]; then ${much}/bin/much-kmein @@ -83,6 +90,25 @@ in { home-manager.users.me = { + services.muchsync.remotes = + let + muchsyncConfig = host: { + name = host; + value = { + frequency = "*:0/10"; + remote.host = host; + remote.checkForModifiedFiles = false; + local.checkForModifiedFiles = false; + # don't run `notmuch new` locally nor remotely because muchsync is only regularly run after `mail-sync` + remote.importNew = false; + local.importNew = false; + }; + }; + in lib.listToAttrs (map muchsyncConfig [ + "wilde" + "homeros" + ]); + programs.msmtp.enable = true; programs.mbsync.enable = true;