diff options
author | dx <aryadevchavali1@gmail.com> | 2020-07-20 21:15:35 +0100 |
---|---|---|
committer | dx <aryadevchavali1@gmail.com> | 2020-07-20 21:15:35 +0100 |
commit | 9e9435c00c06ea4bf989da9fa362060d401df648 (patch) | |
tree | 1360fba1c222541eceea80f42017e54b3fdab909 /Doom/.config/doom | |
parent | 9930e9ef4f40859e47c770ff4146d53883140de4 (diff) | |
download | dotfiles-9e9435c00c06ea4bf989da9fa362060d401df648.tar.gz dotfiles-9e9435c00c06ea4bf989da9fa362060d401df648.tar.bz2 dotfiles-9e9435c00c06ea4bf989da9fa362060d401df648.zip |
+my own mail config
Using authinfo.gpg, notmuch and offlineimap to manage my mail. I now
have my own server @ aryadevchavali.com, so I setup a mail server hosted
on mail.aryadevchavali.com. This config manages the emacs side of
things, I'll add my offlineimaprc later
Diffstat (limited to 'Doom/.config/doom')
-rw-r--r-- | Doom/.config/doom/init.el | 1 | ||||
-rw-r--r-- | Doom/.config/doom/modules/private/mail/autoload.el | 19 | ||||
-rw-r--r-- | Doom/.config/doom/modules/private/mail/config.el | 33 | ||||
-rw-r--r-- | Doom/.config/doom/modules/private/mail/packages.el | 4 |
4 files changed, 57 insertions, 0 deletions
diff --git a/Doom/.config/doom/init.el b/Doom/.config/doom/init.el index 036b8eb..9e4e22e 100644 --- a/Doom/.config/doom/init.el +++ b/Doom/.config/doom/init.el @@ -183,6 +183,7 @@ ;;bindings gentemplate narrow + mail ;;completion ;; (ocaml +lsp) ;; (rss +elfeed) diff --git a/Doom/.config/doom/modules/private/mail/autoload.el b/Doom/.config/doom/modules/private/mail/autoload.el new file mode 100644 index 0000000..13a79f9 --- /dev/null +++ b/Doom/.config/doom/modules/private/mail/autoload.el @@ -0,0 +1,19 @@ +;;; private/mail/autoload.el -*- lexical-binding: t; -*- + +;;;###autoload +(defun +mail/open-mail () + "Activate (or switch to) `notmuch' in its workspace." + (interactive) + (unless (featurep! :ui workspaces) + (user-error ":ui workspaces is required, but disabled")) + (condition-case-unless-debug e + (progn + (+workspace-switch "*MAIL*" t) + (if-let* ((buf (cl-find-if (lambda (it) (string-match-p "^\\*notmuch" (buffer-name (window-buffer it)))) + (doom-visible-windows)))) + (select-window (get-buffer-window buf)) + (notmuch-search "tag:inbox")) + (+workspace/display)) + ('error + (+notmuch/quit) + (signal (car e) (cdr e))))) diff --git a/Doom/.config/doom/modules/private/mail/config.el b/Doom/.config/doom/modules/private/mail/config.el new file mode 100644 index 0000000..25c9102 --- /dev/null +++ b/Doom/.config/doom/modules/private/mail/config.el @@ -0,0 +1,33 @@ +;;; private/mail/config.el -*- lexical-binding: t; -*- +(defconst +mail/signature + "--------------- +Aryadev Chavali") + +(use-package notmuch + :commands notmuch + :config + (setq notmuch-show-logo nil + message-signature +mail/signature + mail-signature +mail/signature) + + (defun +mail/sync-mail() + (interactive) + (start-process "imap-call" "*offlineimap*" "offlineimap" '("-oq"))) + + (map! + (:leader + "om" #'+mail/open-mail) + :map (notmuch-hello-mode-map notmuch-tree-mode-map notmuch-show-mode-map) + "u" #'notmuch-poll-and-refresh-this-buffer + "gS" #'+mail/sync-mail)) + +(use-package smtpmail + :commands mail-send + :after notmuch + :init + (setq smtpmail-smtp-server "mail.aryadevchavali.com" + send-mail-function 'smtpmail-send-it + message-send-mail-function 'smtpmail-send-it + smtpmail-smtp-user "aryadev" + smtpmail-smtp-service 587 + smtpmail-stream-type 'starttls)) diff --git a/Doom/.config/doom/modules/private/mail/packages.el b/Doom/.config/doom/modules/private/mail/packages.el new file mode 100644 index 0000000..e084e30 --- /dev/null +++ b/Doom/.config/doom/modules/private/mail/packages.el @@ -0,0 +1,4 @@ +;; -*- no-byte-compile: t; -*- +;;; private/mail/packages.el + +(package! notmuch) |