diff options
| author | Arpit Chakladar <arpitchakladar@gmail.com> | 2026-09-27 04:16:50 +0530 |
|---|---|---|
| committer | Arpit Chakladar <arpitchakladar@gmail.com> | 2026-09-27 04:16:50 +0530 |
| commit | 0981b6c089b483b4ecddceeffe89ed3f38561fb2 (patch) | |
| tree | 9b947b3a6840d26d7a95a5fbee46afaf488a505a /modules/communication/neomutt/default.nix | |
| parent | 80c2906ed127b9f5024d7c8b8f8aa663a5eb4c31 (diff) | |
| download | home-manager-config-0981b6c089b483b4ecddceeffe89ed3f38561fb2.tar.gz home-manager-config-0981b6c089b483b4ecddceeffe89ed3f38561fb2.zip | |
feat(communication/neomutt): the first sync after opening neomutt is quick
Diffstat (limited to 'modules/communication/neomutt/default.nix')
| -rw-r--r-- | modules/communication/neomutt/default.nix | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/modules/communication/neomutt/default.nix b/modules/communication/neomutt/default.nix index 6c11b03..e8915d9 100644 --- a/modules/communication/neomutt/default.nix +++ b/modules/communication/neomutt/default.nix @@ -15,6 +15,10 @@ let lib.filterAttrs (name: account: account.enable) cfg.accounts ); + quickSyncChannels = lib.mapAttrsToList (name: account: (mbsyncNamesFromName name).channels.quick) ( + lib.filterAttrs (name: account: account.enable) cfg.accounts + ); + neomuttSyncScript = pkgs.writeShellApplication { name = "neomutt-sync"; runtimeInputs = [ @@ -39,7 +43,17 @@ let config.programs.mbsync.package config.programs.notmuch.package ]; - text = builtins.readFile ./neomutt-sync-daemon.sh; + text = + builtins.replaceStrings + [ + "@@QUICK_CHANNELS@@" + "@@FULL_CHANNELS@@" + ] + [ + (lib.concatStringsSep "," quickSyncChannels) + (lib.concatStringsSep "," fullSyncChannels) + ] + (builtins.readFile ./neomutt-sync-daemon.sh); }; neomuttLauncher = pkgs.writeShellApplication { @@ -136,7 +150,7 @@ in }; Service = { Type = "simple"; - ExecStart = "${lib.getExe neomuttSyncDaemon} ${lib.concatStringsSep " " fullSyncChannels}"; + ExecStart = lib.getExe neomuttSyncDaemon; }; }; }) |
