diff --git a/.emacs.d/mail.el b/.emacs.d/mail.el index 7573765..4a5af17 100644 --- a/.emacs.d/mail.el +++ b/.emacs.d/mail.el @@ -106,3 +106,9 @@ (user-error "Aborting."))) (add-hook 'notmuch-mua-send-hook #'my/message-ensure-subject) + +(defun my/ensure-password () + (interactive) + (my/password-store-get "Job/Digital/Email/pvkorytov@etu.ru")) + +(add-hook 'notmuch-mua-send-hook #'my/ensure-password) diff --git a/Mail.org b/Mail.org index 547d84c..764ff2d 100644 --- a/Mail.org +++ b/Mail.org @@ -186,6 +186,7 @@ So, here are the rules which match tags & folders: | job.digital.support | Job_Digital.Support | | job.digital.superservice | Job_Digital.Superservice | | job.digital.applicants | Job_Digital.Applicants | +| job.moevm | Job_Moevm | | etu | Etu | And below is a noweb function, which generates the following commands for notmuch to execute: @@ -568,6 +569,17 @@ Then advice the =notmuch-mua-reply= function: (add-hook 'notmuch-mua-send-hook #'my/message-ensure-subject) #+end_src +** Ensure password is loaded +Otherwise =msmtp= may call =pinentry= while Emacs is locked, which means EXWM can't process the password window. + +#+begin_src emacs-lisp +(defun my/ensure-password () + (interactive) + (my/password-store-get "Job/Digital/Email/pvkorytov@etu.ru")) + +(add-hook 'notmuch-mua-send-hook #'my/ensure-password) +#+end_src + * mailcap mailcap file is a file which defines how to read to different MIME types. Notmuch also uses it, so why not keep it here. diff --git a/Mail/.notmuch/hooks/post-new b/Mail/.notmuch/hooks/post-new index 75620d4..d53b6e0 100755 --- a/Mail/.notmuch/hooks/post-new +++ b/Mail/.notmuch/hooks/post-new @@ -23,6 +23,8 @@ notmuch tag +job.digital.superservice "path:pvkorytov_etu/Job_Digital.Superservi notmuch tag -job.digital.superservice "NOT path:pvkorytov_etu/Job_Digital.Superservice/cur/** AND tag:job.digital.superservice AND tag:pvkorytov" notmuch tag +job.digital.applicants "path:pvkorytov_etu/Job_Digital.Applicants/cur/** AND NOT tag:job.digital.applicants" notmuch tag -job.digital.applicants "NOT path:pvkorytov_etu/Job_Digital.Applicants/cur/** AND tag:job.digital.applicants AND tag:pvkorytov" +notmuch tag +job.moevm "path:pvkorytov_etu/Job_Moevm/cur/** AND NOT tag:job.moevm" +notmuch tag -job.moevm "NOT path:pvkorytov_etu/Job_Moevm/cur/** AND tag:job.moevm AND tag:pvkorytov" notmuch tag +etu "path:pvkorytov_etu/Etu/cur/** AND NOT tag:etu" notmuch tag -etu "NOT path:pvkorytov_etu/Etu/cur/** AND tag:etu AND tag:pvkorytov" echo "Post-new filters done" diff --git a/Mail/.notmuch/hooks/pre-new b/Mail/.notmuch/hooks/pre-new index dfbd312..27d01c6 100755 --- a/Mail/.notmuch/hooks/pre-new +++ b/Mail/.notmuch/hooks/pre-new @@ -13,8 +13,9 @@ notmuch search --output=files "NOT path:pvkorytov_etu/Job_Digital.Docs/cur/** AN notmuch search --output=files "NOT path:pvkorytov_etu/Job_Digital.Support/cur/** AND tag:job.digital.support AND tag:pvkorytov" | xargs -I ! mv ! ~/Mail/pvkorytov_etu/Job_Digital.Support/cur/ notmuch search --output=files "NOT path:pvkorytov_etu/Job_Digital.Superservice/cur/** AND tag:job.digital.superservice AND tag:pvkorytov" | xargs -I ! mv ! ~/Mail/pvkorytov_etu/Job_Digital.Superservice/cur/ notmuch search --output=files "NOT path:pvkorytov_etu/Job_Digital.Applicants/cur/** AND tag:job.digital.applicants AND tag:pvkorytov" | xargs -I ! mv ! ~/Mail/pvkorytov_etu/Job_Digital.Applicants/cur/ +notmuch search --output=files "NOT path:pvkorytov_etu/Job_Moevm/cur/** AND tag:job.moevm AND tag:pvkorytov" | xargs -I ! mv ! ~/Mail/pvkorytov_etu/Job_Moevm/cur/ notmuch search --output=files "NOT path:pvkorytov_etu/Etu/cur/** AND tag:etu AND tag:pvkorytov" | xargs -I ! mv ! ~/Mail/pvkorytov_etu/Etu/cur/ -notmuch search --output=files "NOT path:pvkorytov_etu/Archive/cur/** AND NOT tag:inbox AND NOT tag:sent AND NOT tag:spam AND NOT tag:trash AND NOT tag:job.digital AND NOT tag:job.digital.docs AND NOT tag:job.digital.support AND NOT tag:job.digital.superservice AND NOT tag:job.digital.applicants AND NOT tag:etu AND tag:pvkorytov" | xargs -I ! mv ! ~/Mail/pvkorytov_etu/Archive/cur/ +notmuch search --output=files "NOT path:pvkorytov_etu/Archive/cur/** AND NOT tag:inbox AND NOT tag:sent AND NOT tag:spam AND NOT tag:trash AND NOT tag:job.digital AND NOT tag:job.digital.docs AND NOT tag:job.digital.support AND NOT tag:job.digital.superservice AND NOT tag:job.digital.applicants AND NOT tag:job.moevm AND NOT tag:etu AND tag:pvkorytov" | xargs -I ! mv ! ~/Mail/pvkorytov_etu/Archive/cur/ echo "Pre-new filters done" parallel --link -j0 "(cd /home/pavel/Mail/{1}/ && {2} {3})" ::: thexcloud progin6304 pvkorytov_etu ::: "$GMI" "$GMI" "offlineimap" ::: sync sync ""