Get this great stuff without effort:
Specifically, this wizard:
neomutt
, isync
, and msmtp
appropriate for your email addressgit clone https://github.com/LukeSmithxyz/mutt-wizard ~/.config/mutt
cd ~/.config/mutt
./mw # Run the mutt-wizard
Yes you have to put the whole repo in the mutt directory (~/.config/mutt/
).
Just backup or delete any previous mutt configs (or msmtp or mbsync configs if you have them; if you don’t know, you don’t have them).
Install these required programs:
neomutt
- the email client.isync
- downloads and syncs the mail. (required at install)msmtp
- sends the email.pass
- safely encrypts passwords (required at install)You also need a GPG key pair to encrypt passwords.
If you don’t know what that is, just run gpg --full-gen-key
(or gpg2 --full-gen-key
) to get one.
You might also want some good optional stuff:
w3m
- view HTML email and images in neomutt.notmuch
- index and search mail. Install it and run notmuch setup
, tell it that your mail is in ~/.local/share/mail/
. You can run it in mutt with ctrl-f
. Run notmuch new
to process new mail, although the included mailsync
script does this for you.abook
- a terminal-based address book. Pressing tab while typing an address to send mail to will suggest contacts that are in your abook.To give you an example of the interface, here’s an idea:
m
- send mail (uses your default $EDITOR
to write)j
/k
and d
/u
- vim-like bindings to go down and up (or d
/u
to go down/up a page).l
- open mail, or attachment page or attachmenth
- the opposite of l
r
/R
- reply/reply all to highlighted mails
- save selected mail or selected attachmentgs
,gi
,ga
,gd
,gS
- Press g
followed by another letter to change mailbox: s
ent, i
nbox, a
rchive, d
rafts, S
pam, etc.M
and C
- For M
ove and C
opy: follow them with one of the mailbox letters above, i.e. MS
means “move to Spam”.i#
- Press i
followed by a number 1-9 to go to a different account. If you add 9 accounts via mutt-wizard, they will each be assigned a number.a
to add address/person to abook and Tab
while typing address to complete one from book.?
- see all keyboard shortcutsctrl-j
/ctrl-k
- move up and down in sidebar, ctrl-o
opens mailboxisync
/mbsync
has replaced offlineimap
as the backend. Offlineimap was error-prone, bloated, used obsolete Python 2 modules and required separate steps to install the system.dialog
is no long used (le bloat) and the interface is simply text.~/.config/
and mail default location moved to ~/.local/share/mail/
, reducing mess in ~
.accounts/
hold account data and bin/
holds script run by or for mutt. All other directories have been disintegrated.pass
is used as a password manager instead of separately saving passwords.accounts/NAME.muttrc
.domains.csv
so their users can more easily use mutt-wizard.See Luke’s website here. Email him at luke@lukesmith.xyz.
mutt-wizard is free/libre software, licensed under the GPLv3.
muttrc
file is for universal settings.personal.muttrc
, called by the muttrc
, is the place where user-specific settings are set, and the wizard automatically adds the macros for switching between accounts here. If you want to contribute to mutt-wizard, you should put your universal personal settings here and have git ignore it. For example, I put my gpg settings here and personal aliases here.accounts/
. If I create an account named luke
, for example, accounts/luke.muttrc
will hold that account’s unique settings and accounts/luke/
will hold headers and cache files.bin/
holds the mailsync
script and other scripts and tools the wizard uses. I make a link with ln
to this mailsync
file in my $PATH
so I can run it from wherever.