summaryrefslogtreecommitdiffstats
path: root/.emacs.d/jd/jd-mu4e.el
blob: e97c4fc126249cc2bcdbfc6a8ca165e43b4a7bf8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
(when (not jd/guix-p)
  (add-to-list 'load-path "/usr/local/share/emacs/site-lisp/mu4e"))

(jd/use-package htmlize "emacs-htmlize")

; (jd/add-package-to-manifest "mbsync") ;; TODO: Define guix mbsync package?

(jd/use-package mu4e "mu"
  :defer 10
  :ensure nil
  :config
  (require 'org-mu4e)

  (setq mu4e-mu-binary "/usr/local/bin/mu")
  (setq mu4e-update-interval (* 10 60))
  (setq mu4e-get-mail-command "mbsync -a")
  (setq mu4e-maildir "~/Mail")

  (setq mu4e-completing-read-function #'ivy-completing-read)

  (setq mu4e-change-filenames-when-moving t)

  (setq mu4e-contexts
        `(,(make-mu4e-context
            :name "Abaks"
            :match-func (lambda (msg) (when msg
                                        (string-prefix-p "/abaks" (mu4e-message-field msg :maildir))))
            :vars '(
                    (user-full-name . "Jakub Dlugosz")
                    (user-mail-address . "jakub@abaks.pl")
                    (mu4e-sent-folder . "/abaks/Sent Items")
                    (mu4e-trash-folder . "/abaks/Trash")
                    (mu4e-drafts-folder . "/abaks/Drafts")
                    (mu4e-refile-folder . "/abaks/Archive")
                    (smtpmail-local-domain . "pl")
                    (smtpmail-smtp-server . "smtp.abaks.pl")
                    (mu4e-sent-messages-behavior . sent)
                    ))
          ,(make-mu4e-context
            :name "Gmail"
            :match-func (lambda (msg) (when msg
                                        (string-prefix-p "/gmail" (mu4e-message-field msg :maildir))))
            :vars '(
                    (user-full-name . "Jakub Dlugosz")
                    (user-mail-address . "jdlugosz963@gmail.com")
                    (mu4e-sent-folder . "/gmail/\[Gmail\]/Wys\&AUI-ane")
                    (mu4e-trash-folder . "/gmail/\[Gmail\]/Kosz")
                    (mu4e-drafts-folder . "/gmail/\[Gmail\]/Wersje\ robocze")
                    (mu4e-refile-folder . "/gmail/Archive")
                    (smtpmail-local-domain . "com")
                    (smtpmail-smtp-server . "smtp.gmail.com")
                    (mu4e-sent-messages-behavior . sent)
                    ))))

  (setq mail-user-agent 'mu4e-user-agent
        mail-host-address nil
        message-send-mail-function 'smtpmail-send-it
        smtpmail-smtp-service 465
        smtpmail-stream-type  'ssl)

  (setq mu4e-compose-signature (concat
                                "Pozdrawiam,\n"
                                "Jakub Długosz"))

  (mu4e t))

(jd/use-package mu4e-alert "emacs-mu4e-alert"
  :defer 20
  :config
  (mu4e-alert-set-default-style 'libnotify)
  (mu4e-alert-enable-mode-line-display)
  (mu4e-alert-enable-notifications)

  (jd/leader-key-def
   "m"  '(:ignore t :which-key "mail")
   "mm" 'mu4e
   "mc" 'mu4e-compose-new))

(provide 'jd-mu4e)