A: Three steps:
- Set up multiple accounts in fetchmail to receive emails from different accounts;
- set up multiple accounts in msmtp to send email with multiple accounts;
- set up multiple accounts control in mutt.
First of, you need to have multiple accounts setting in your .msmtprc file. For example, here I have two Gmail accounts setting:
account gmail
host smtp.gmail.com
port 587
from goodguy@gmail.com
tls on
tls_starttls on
tls_trust_file /home/usrname/mail/certs/Thawte_Premium_Server_CA.pem
auth on
user goodguy
password 1234567
account gmail1
host smtp.gmail.com
port 587
from badguy@gmail.com
tls on
tls_starttls on
tls_trust_file /home/usrname/mail/certs/Thawte_Premium_Server_CA.pem
auth on
user badguy
password abcdefg
account default: gmail
Default account is the first account, as specified in the config file. Now what you need to do is to control when to send email with first account, and when with the second account.
You need add the following lines to your .muttrc file to enable multiple accounts support.
Few things to explain. There is a "from" environment in your .muttrc file. If the default value is goodguy@gmail.com, your default account when composing email or replying email sent to accounts other than the emails specified in "alternate" emails is goodguy@gmail.com.
The ugly status set in the macro is to help you know what the "from" environment is.
set envelope_from ="yes"
set reverse_name=yes
alternates "goodguy@gmail.com|badguy@gmail.com"
macro index \e1 ":set signature=~/.signature_private\n:\
set from=goodguy@gmail.com\n:set status_format=\"-%r-Gmail: %f \
[Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? \
Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---\"\n"\
"Switch to Gmail"
macro index \e2 ":set signature=~/.signature_fake\n:\
set from=badguy@gmail.com\n:set realname=Jason\n:set status_format=\"-%r-Gmail2: %f \
[Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? \
Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---\"\n"\
"Switch to Gmail2"
The first three lines are to enable email matching during reply. That is, when you are replying emails sent to goodguy@gmail.com, the "From:" header is automatically set as goodguy@gmail.com, so that you don't need to set which account to use manually before reply. Note that this will not change the "from" environment, so when you compose new mail, the "From:" header will be the default "from" environment in .muttrc file, or others if you have manually changed the "from" environment as shown below.
If you need to compose a new email, you can choose which account to use by pressing ALT
Once you specified your "From:" header, msmtp will compare the header with "from" line in .msmtprc file, to find account with that email address to send the email. If msmtp can't find one, it will send email with default account in .msmtprc file.
OK, Done.
1 comment:
great man ;-)
i've searched a lot of time for found a tutorial like this, on mutt =>1.5.20 this is the only solution for use multiple account.
hi && thx :)
Post a Comment