How to install/setup mutt with Gmail on CentOS and Ubuntu?

Gmail Setup

For authentication, you'll have to do either of two things:

  1. Generate an application-specific password for your Google Account (your only option if you're using 2FA),
  2. Turn on less-secure app access (not an option with 2FA)

In gmail, go click the gear icon, go to Settings, go to the tab Forwarding POP/IMAP, and click the Configuration instructions link in IMAP Access row.

Then click I want to enable IMAP. At the bottom of the page, under the paragraph about configuring your mail client, select Other. Note the mail server information and use that information for further settings as shown in the next section.

Install mutt

CentOS

yum install mutt

Ubuntu

sudo apt-get install mutt

Configure Mutt

Create

mkdir -p ~/.mutt/cache/headers
mkdir ~/.mutt/cache/bodies
touch ~/.mutt/certificates

Create mutt configuration file muttrc

touch ~/.mutt/muttrc

Open muttrc

vim ~/.mutt/muttrc

Add following configurations

set ssl_starttls=yes
set ssl_force_tls=yes

set imap_user = "[email protected]"
set imap_pass = "PASSWORD"

set from="[email protected]"
set realname="Your Name"

set folder = "imaps://imap.gmail.com/"
set spoolfile = "imaps://imap.gmail.com/INBOX"
set postponed="imaps://imap.gmail.com/[Gmail]/Drafts"

set header_cache = "~/.mutt/cache/headers"
set message_cachedir = "~/.mutt/cache/bodies"
set certificate_file = "~/.mutt/certificates"

set smtp_url = "smtps://[email protected]:[email protected]:465/"

set move = no
set imap_keepalive = 900

Make appropriate changes, like change_this_user_name to your gmail user name and PASSWORD to your gmail password. And save the file.

Now you are ready to send, receive and read email using email client Mutt by simply typing mutt.

For the first time it will prompt to accept SSL certificates; press a to always accept these certificates.

Now you will be presented with your Gmail inbox.