Mail authentication, setup SMTP. Add more email config

This commit is contained in:
Curt Spark 2026-03-10 18:14:01 +00:00
parent 73485647b4
commit 98aba64caa
1 changed files with 67 additions and 15 deletions

82
init.el
View File

@ -496,10 +496,17 @@
:ensure t :ensure t
:after transient) :after transient)
;; Auth Source Pass - Use pass for authentication with mail
(use-package auth-source-pass
:ensure nil
:init
(auth-source-pass-enable))
;; Mu4e Mail Config ;; Mu4e Mail Config
(if (executable-find "mu") (if (executable-find "mu")
(use-package mu4e (use-package mu4e
:ensure nil :ensure nil
:after auth-source-pass
:config :config
(setq mu4e-mu-binary (executable-find "mu")) (setq mu4e-mu-binary (executable-find "mu"))
@ -518,7 +525,10 @@
(setq mu4e-compose-format-flowed t) (setq mu4e-compose-format-flowed t)
;; Use completing read AKA vertico ;; Use completing read AKA vertico
(setq mu4e-completing-read-function 'completing-read) (setq mu4e-completing-read-function #'completing-read)
;; Immediately send SMTP with credentials
(setq smtpmail-servers-requiring-authorization "*")
(setq mu4e-contexts (setq mu4e-contexts
(list (list
@ -531,9 +541,10 @@
(string-prefix-p "/work-cspark" (mu4e-message-field msg :maildir)))) (string-prefix-p "/work-cspark" (mu4e-message-field msg :maildir))))
:vars '((user-mail-address . "work@cspark.dev") :vars '((user-mail-address . "work@cspark.dev")
(user-full-name . "Curt Spark (Work)") (user-full-name . "Curt Spark (Work)")
(smtpmail-smtp-server . "smtp.cspark.dev") (smtpmail-smtp-server . "mail.cspark.dev")
(smtpmail-smtp-service . 465) (smtpmail-smtp-user . "work@cspark.dev")
(smtpmail-stream-type . ssl) (smtpmail-smtp-service . 587)
(smtpmail-stream-type . starttls)
(mu4e-compose-signature . "- Curt") (mu4e-compose-signature . "- Curt")
(mu4e-inbox-folder . "/work-cspark/Inbox") (mu4e-inbox-folder . "/work-cspark/Inbox")
(mu4e-drafts-folder . "/work-cspark/Drafts") (mu4e-drafts-folder . "/work-cspark/Drafts")
@ -549,9 +560,10 @@
(string-prefix-p "/services-cspark" (mu4e-message-field msg :maildir)))) (string-prefix-p "/services-cspark" (mu4e-message-field msg :maildir))))
:vars '((user-mail-address . "services@cspark.dev") :vars '((user-mail-address . "services@cspark.dev")
(user-full-name . "Curt Spark (services)") (user-full-name . "Curt Spark (services)")
(smtpmail-smtp-server . "smtp.cspark.dev") (smtpmail-smtp-server . "mail.cspark.dev")
(smtpmail-smtp-service . 465) (smtpmail-smtp-user . "services@cspark.dev")
(smtpmail-stream-type . ssl) (smtpmail-smtp-service . 587)
(smtpmail-stream-type . starttls)
(mu4e-compose-signature . "- Curt") (mu4e-compose-signature . "- Curt")
(mu4e-inbox-folder . "/services-cspark/Inbox") (mu4e-inbox-folder . "/services-cspark/Inbox")
(mu4e-drafts-folder . "/services-cspark/Drafts") (mu4e-drafts-folder . "/services-cspark/Drafts")
@ -567,32 +579,72 @@
(string-prefix-p "/personal-cspark" (mu4e-message-field msg :maildir)))) (string-prefix-p "/personal-cspark" (mu4e-message-field msg :maildir))))
:vars '((user-mail-address . "personal@cspark.dev") :vars '((user-mail-address . "personal@cspark.dev")
(user-full-name . "Curt Spark (personal)") (user-full-name . "Curt Spark (personal)")
(smtpmail-smtp-server . "smtp.cspark.dev") (smtpmail-smtp-server . "mail.cspark.dev")
(smtpmail-smtp-service . 465) (smtpmail-smtp-user . "personal@cspark.dev")
(smtpmail-stream-type . ssl) (smtpmail-smtp-service . 587)
(smtpmail-stream-type . starttls)
(mu4e-compose-signature . "- Curt") (mu4e-compose-signature . "- Curt")
(mu4e-inbox-folder . "/personal-cspark/Inbox") (mu4e-inbox-folder . "/personal-cspark/Inbox")
(mu4e-drafts-folder . "/personal-cspark/Drafts") (mu4e-drafts-folder . "/personal-cspark/Drafts")
(mu4e-sent-folder . "/personal-cspark/Sent Mail") (mu4e-sent-folder . "/personal-cspark/Sent Mail")
(mu4e-trash-folder . "/personal-cspark/Trash"))) (mu4e-trash-folder . "/personal-cspark/Trash")))
;; Alerts account
(make-mu4e-context
:name "D CSpark Alerts"
:match-func
(lambda (msg)
(when msg
(string-prefix-p "/alerts-cspark" (mu4e-message-field msg :maildir))))
:vars '((user-mail-address . "alerts@cspark.dev")
(user-full-name . "Curt Spark (alerts)")
(smtpmail-smtp-server . "mail.cspark.dev")
(smtpmail-smtp-user . "alerts@cspark.dev")
(smtpmail-smtp-service . 587)
(smtpmail-stream-type . starttls)
(mu4e-compose-signature . "- Curt")
(mu4e-inbox-folder . "/alerts-cspark/Inbox")
(mu4e-drafts-folder . "/alerts-cspark/Drafts")
(mu4e-sent-folder . "/alerts-cspark/Sent Mail")
(mu4e-trash-folder . "/alerts-cspark/Trash")))
;; Tuxtank Services account ;; Tuxtank Services account
(make-mu4e-context (make-mu4e-context
:name "D Tuxtank Services" :name "E Tuxtank Services"
:match-func :match-func
(lambda (msg) (lambda (msg)
(when msg (when msg
(string-prefix-p "/personal-tuxtank" (mu4e-message-field msg :maildir)))) (string-prefix-p "/personal-tuxtank" (mu4e-message-field msg :maildir))))
:vars '((user-mail-address . "personal@tuxtank.dev") :vars '((user-mail-address . "personal@tuxtank.dev")
(user-full-name . "Tuxtank (personal)") (user-full-name . "Tuxtank (personal)")
(smtpmail-smtp-server . "smtp.tuxtank.dev") (smtpmail-smtp-server . "mail.tuxtank.dev")
(smtpmail-smtp-service . 465) (smtpmail-smtp-user . "personal@tuxtank.dev")
(smtpmail-stream-type . ssl) (smtpmail-smtp-service . 587)
(smtpmail-stream-type . starttls)
(mu4e-compose-signature . "- Tuxtank") (mu4e-compose-signature . "- Tuxtank")
(mu4e-inbox-folder . "/personal-tuxtank/Inbox") (mu4e-inbox-folder . "/personal-tuxtank/Inbox")
(mu4e-drafts-folder . "/personal-tuxtank/Drafts") (mu4e-drafts-folder . "/personal-tuxtank/Drafts")
(mu4e-sent-folder . "/personal-tuxtank/Sent Mail") (mu4e-sent-folder . "/personal-tuxtank/Sent Mail")
(mu4e-trash-folder . "/personal-tuxtank/Trash"))))))) (mu4e-trash-folder . "/personal-tuxtank/Trash")))
;; Tuxtank Alerts account
(make-mu4e-context
:name "F Tuxtank Alerts"
:match-func
(lambda (msg)
(when msg
(string-prefix-p "/alerts-tuxtank" (mu4e-message-field msg :maildir))))
:vars '((user-mail-address . "alerts@tuxtank.dev")
(user-full-name . "Tuxtank (alerts)")
(smtpmail-smtp-server . "mail.tuxtank.dev")
(smtpmail-smtp-user . "alerts@tuxtank.dev")
(smtpmail-smtp-service . 587)
(smtpmail-stream-type . starttls)
(mu4e-compose-signature . "- Tuxtank")
(mu4e-inbox-folder . "/alerts-tuxtank/Inbox")
(mu4e-drafts-folder . "/alerts-tuxtank/Drafts")
(mu4e-sent-folder . "/alerts-tuxtank/Sent Mail")
(mu4e-trash-folder . "/alerts-tuxtank/Trash")))))))
;(setq mu4e-maildir-shortcuts ;(setq mu4e-maildir-shortcuts