Múltiples cuentas de smtp en GNUS con msmtp
En un artículo anterior ya se explico cómo configurar Gmail en Gnus incluyendo el servidor de smtp. La idea de este artículo es que Gnus elija el servidor smtp en función del from que introducimos.
Hay diferentes formas de gestionar esto. Aquí se ha elegido usar msmtp por su estabilidad y sencillez.
Así es que lo primero será instalar msmtp:
sudo apt-get install msmtp
Después se crea un fichero .msmtprc para almacenar las cuentas de smtp:
################################# account gmail host smtp.gmail.com domain smtp.gmail.com tls on tls_certcheck off tls_starttls on auth on user correo@gmail.com from correo@gmail.com password XXXXXXXX port 587 logfile ~/msmtplog.txt ################################## account gnues host chapters.gnu.org domain chapters.gnu.org tls on tls_certcheck off tls_starttls on auth on user miusuario from miusuario@es.gnu.org password XXXXXXXXX port 25 logfile ~/msmtplog.txt ##################################
Una vez hecho esto se cambian los permisos del fichero de configuración:
chmod 600 ~/.msmtprc
Y ahora se reemplaza la configuración que hubiera en el .emacs relativa a smtp por lo siguiente:
(defun cg-feed-msmtp ()
(if (message-mail-p)
(save-excursion
(let* ((from
(save-restriction
(message-narrow-to-headers)
(message-fetch-field "from")))
(account
(cond
;; I use email address as account label in ~/.msmtprc
((string-match "correo@gmail.com" from) "gmail")
;; Add more string-match lines for your email accounts
((string-match "miusuario@es.gnu.org" from) "gnues"))))
(setq message-sendmail-extra-arguments (list "-a" account))))))
(setq message-sendmail-envelope-from 'header)
(add-hook 'message-send-mail-hook 'cg-feed-msmtp)
;; with Emacs 23.1, you have to set this explicitly (in MS Windows)
;; otherwise it tries to send through OS associated mail client
(setq message-send-mail-function 'message-send-mail-with-sendmail)
;; we substitute sendmail with msmtp
(setq sendmail-program "/usr/bin/msmtp")
Modificando claro lo relativo al correo y a las etiquetas de msmtp que hayais puesto.
Con esto ya debería valer, pero podéis depurar posibles errores lanzando msmtp desde línea de comandos y revisando el log que en este caso está en ~/msmtplog.txt
Suerte!
-
29/09/2011 en 12:52 | #1Gmail desde Emacs Gnus « Blog de David Arroyo Menéndez