Sto tentando di configurare più account Gmail utilizzando mu4e-context
". Ho molte funzionalità funzionanti tranne una. Posso passare da un contesto all'altro, aggiornare la mia posta in ogni account (usando offlineimap) e posso inviare posta.
Il problema è che ho più righe nel mio .authinfo
file, che hanno lo stesso nome host - supponevo che mu4e
sarei stato in grado di differenziare per nome utente, questo sembra non essere il caso. Non importa in quale contesto mi trovo, la posta viene sempre inviata dall'account che viene configurato per primo nel .authinfo
file.
Non so come fare in modo che ciascun contesto utilizzi credenziali separate per accedere al server SMTP di Gmail.
Ho pensato di tentare di impostare alcuni alias hostname in modo che personal.gmail.com
e work.gmail.com
sia volontà di smtp.gmail.com
modo che io possa dare loro i nomi delle macchine separate in authinfo
, ma non sono sicuro come raggiungere questo obiettivo (su OSX) o anche se si tratta di un modo ragionevole per risolvere questo problema (Idealmente non dovrei scimmiottare con la configurazione fuori da Emacs).
Il mio authinfo è simile a questo
machine smtp.gmail.com login personal@example.com port 587 password fakepassword
machine smtp.gmail.com login work@example.com port 587 password fakepassword
e le parti rilevanti del mio mu4e-config sono:
(setq mu4e-get-mail-command "offlineimap")
(setq mail-user-agent 'mu4e-user-agent)
(setq message-send-mail-function 'smtpmail-send-it)
(setq smtpmail-stream-type 'starttls)
(setq smtpmail-default-smtp-server "smtp.gmail.com")
(setq smtpmail-smtp-server "smtp.gmail.com")
(setq smtpmail-smtp-service 587)
(setq mu4e-contexts
`( ,(make-mu4e-context
:name "personal"
:enter-func (lambda () (mu4e-message "Switch to Personal context"))
;; leave-func not defined
:match-func (lambda (msg)
(when msg
(mu4e-message-contact-field-matches msg :to "personal@example.com")))
:vars '( (user-mail-address . "personal@example.com" )
(mu4e-drafts-folder . "/personal/drafts")
(mu4e-sent-folder . "/personal/sent")
(mu4e-trash-folder . "/personal/bin")
(mu4e-maildir-shortcuts . (("/personal/INBOX" . ?i)
("/personal/sent" . ?s)
("/personal/bin" . ?t)))
(smtpmail-mail-address . "personal@example.com")
(user-full-name . "Matt Valentine-House" )))
,(make-mu4e-context
:name "work"
:enter-func (lambda () (mu4e-message "Switch to Work context"))
;; leave-fun not defined
:match-func (lambda (msg)
(when msg
(mu4e-message-contact-field-matches msg :to "work@example.com")))
:vars '( (user-mail-address . "work@example.com" )
(mu4e-drafts-folder . "/work/drafts")
(mu4e-sent-folder . "/work/sent")
(mu4e-trash-folder . "/work/bin")
(mu4e-maildir-shortcuts . (("/work/INBOX" . ?i)
("/work/sent" . ?s)
("/work/bin" . ?t)))
(smtpmail-mail-address . "work@example.com")
( user-full-name . "Matthew Valentine-House" )))))