+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
This commit is contained in:
@@ -183,6 +183,7 @@
|
|||||||
;;bindings
|
;;bindings
|
||||||
gentemplate
|
gentemplate
|
||||||
narrow
|
narrow
|
||||||
|
mail
|
||||||
;;completion
|
;;completion
|
||||||
;; (ocaml +lsp)
|
;; (ocaml +lsp)
|
||||||
;; (rss +elfeed)
|
;; (rss +elfeed)
|
||||||
|
|||||||
19
Doom/.config/doom/modules/private/mail/autoload.el
Normal file
19
Doom/.config/doom/modules/private/mail/autoload.el
Normal file
@@ -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)))))
|
||||||
33
Doom/.config/doom/modules/private/mail/config.el
Normal file
33
Doom/.config/doom/modules/private/mail/config.el
Normal file
@@ -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))
|
||||||
4
Doom/.config/doom/modules/private/mail/packages.el
Normal file
4
Doom/.config/doom/modules/private/mail/packages.el
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
;; -*- no-byte-compile: t; -*-
|
||||||
|
;;; private/mail/packages.el
|
||||||
|
|
||||||
|
(package! notmuch)
|
||||||
Reference in New Issue
Block a user