1
0
Fork 0
nixos-config/home-manager/roles/mail2rss.nix

42 lines
1.1 KiB
Nix
Raw Normal View History

2022-03-08 01:42:46 +00:00
{
lib,
pkgs,
config,
...
}: let
2021-05-18 14:33:28 +00:00
mail2rss = pkgs.writeHaskellScript
2022-03-08 01:42:46 +00:00
{
name = "mail2rss";
bins = [pkgs.notmuch pkgs.mblaze pkgs.isync pkgs.logfeed];
imports = ["System.Environment (setEnv)"];
} ''
2020-12-13 20:16:46 +00:00
main = do
setEnv "NOTMUCH_CONFIG" "${
2022-03-08 01:42:46 +00:00
config.home.sessionVariables.NOTMUCH_CONFIG or ""
}"
2020-12-13 20:16:46 +00:00
mbsync "-a"
notmuch "new" "--quiet"
mail2rss "${config.accounts.email.maildirBasePath}" "hera/Move/readlater" &> Truncate "/var/www/rss/mails2.xml"
files <- notmuch "search" "--output" "files" "folder:hera/Move/readlater" |> capture
writeOutput files |> mrefile "${config.accounts.email.maildirBasePath}/hera/Archiv/unsortiert"
mbsync "-a"
notmuch "new" "--quiet"
'';
2022-03-08 01:42:46 +00:00
in {
2020-12-12 22:39:54 +00:00
systemd.user = {
2020-12-13 12:49:56 +00:00
timers.mail2rss = {
2020-12-13 20:16:46 +00:00
Timer.OnCalendar = "19:58";
2022-03-08 01:42:46 +00:00
Install.WantedBy = ["timers.target"];
2020-12-12 22:39:54 +00:00
};
services = {
mail2rss = {
Unit.Description = "Mail to rss exporter";
Service = {
2020-12-13 20:16:46 +00:00
ExecStart = "${mail2rss}/bin/mail2rss";
2020-12-12 22:39:54 +00:00
Type = "oneshot";
};
};
};
};
}