]> Git — Sourcephile - julm/julm-nix.git/blob - homes/julm/mutt.nix
nix: revamp home-manager profiles
[julm/julm-nix.git] / homes / julm / mutt.nix
1 { pkgs, lib, config, ... }:
2 {
3 imports = [
4 ../../home-manager/profiles/mutt.nix
5 ];
6 home.activation.createMuttDirectories =
7 let mkdir = dir: ''$DRY_RUN_CMD mkdir -p $VERBOSE_ARG "${dir}"''; in
8 lib.hm.dag.entryAfter [ "writeBoundary" ]
9 (lib.concatMapStringsSep "\n" mkdir [
10 "${config.xdg.cacheHome}/mutt/messages"
11 "${config.xdg.cacheHome}/mutt/news"
12 "${config.xdg.cacheHome}/mutt/tmp"
13 ]);
14 xdg.configFile."mutt/mailcap".text = ''
15 application/pdf; evince %s; test=test -n "$DISPLAY";
16 image/vnd.djvu; djview4 %s; test=test -n "$DISPLAY";
17 image/*; geeqie %s; test=test -n "$DISPLAY";
18 text/html; firefox %s; test=test -n "$DISPLAY"; edit=firefox %s;
19 '';
20 xdg.configFile."neomutt/neomuttrc".text = ''
21 unmailboxes *
22 set header_cache = "${config.xdg.cacheHome}/mutt/headers"
23 set mailcap_path = "${config.xdg.configHome}/mutt/mailcap"
24 set message_cachedir = "${config.xdg.cacheHome}/mutt/messages"
25 set news_cache_dir = '${config.xdg.cacheHome}/mutt/news'
26 set tmpdir = "${config.xdg.cacheHome}/mutt/tmp"
27 set newsrc = '${config.xdg.configHome}/mutt/newsrc.%s'
28 ${builtins.readFile mutt/muttrc}
29 macro index,pager H ":set auto_tag=yes\n:unset wait_key\n<pipe-entry>${pkgs.procmail}/bin/formail -ds | rspamc learn_ham\n:set wait_key\n" "Flag as HAM"
30 macro index,pager S "<pipe-entry>${pkgs.procmail}/bin/formail -ds | rspamc symbols\n<enter-command>set wait_key\n" "Tests if it is SPAM"
31 macro index,pager s ":set confirmappend=no delete=yes auto_tag=yes\n:unset wait_key\n<pipe-entry>${pkgs.procmail}/bin/formail -ds | rspamc learn_spam\n:set wait_key\n<save-message>=.Pourriel/\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n" "Flag as SPAM"
32
33 account-hook (autogeree.net) 'set certificate_file = ${mutt/autogeree.net/certificate_file.pem}'
34 account-hook (sourcephile.fr) 'set certificate_file = ${mutt/sourcephile.fr/certificate_file.pem}'
35
36 #source ${mutt/sourcephile.fr/julm.imap.conf}
37 #source ${mutt/autogeree.net/julm.imap.conf}
38 #set nm_default_uri = imaps://julm@sourcephile.fr@mail.sourcephile.fr:993/INBOX
39 #set spoolfile = imaps://julm@sourcephile.fr@mail.sourcephile.fr:993/
40
41 folder-hook (/autogeree.net/) 'source ${mutt/autogeree.net/julm.maildir.conf}'
42 source ${mutt/autogeree.net/julm.maildir.conf}
43 mailboxes `find -P ~/mail/autogeree.net/mail/ -type d -name new -printf "\"%h\" "`
44
45 folder-hook (/sourcephile.fr/) 'source ${mutt/sourcephile.fr/julm.maildir.conf}'
46 source ${mutt/sourcephile.fr/julm.maildir.conf}
47 mailboxes `find -P ~/mail/sourcephile.fr/mail/ -type d -name new -printf "\"%h\" "`
48
49 folder-hook (news.sourcephile.fr) 'source ${mutt/sourcephile.fr/julm.maildir.conf}; set record = =Envoyés'
50 source ${mutt/sourcephile.fr/mails.nntp.conf}
51 source ${mutt/sourcephile.fr/mails.imap.conf}
52
53 '';
54 }