[mutt] Configure mutt to receive email via IMAP and send via SMTP
“All mail clients suck. This one [mutt] just sucks less.” Michael Elkins, ca. 1995
Actually I have tried a lot of desktop email clients (viz., Outlook, thunderbird, seamonkey, sylpheed, pine, alpine, claws email, kmail, evolution, opera) and in the long run they all starts sucking at the RAM. Now to be precise, I must tell you that it’s not a full-fledged mail-transfer agent (MTA), but rather a mail user agent (MUA), i.e. just an email client just like those previously mentioned.
Step 1: Create a password file, say ~/.secret/.passwd. Enter the passwords in it as follows and save the file (don’t worry, we’re going to encrypt it soon!):
GMail: passwd1 Yahoo: passwd2
Step 2: Now encrypt the file with your gpg key (refer to the previous post for details). Don’t forget to delete the unencrypted file.
$ cd ~/.secret $ gpg -e .passwd -o .passwd.gpg $ rm -f .passwd
Step 3a: back to the home direcotory and modify the ~/.muttrc file: (you may equivalently do the same in ~/.mutt/muttrc)
# Process the password files first #------------------------------------- set my_tmpsecret=`gpg -o ~/.secret/.tmp -d ~/.secret/.passwd.gpg` set my_gpass=`awk '/GMail:/ {print $2}' ~/.secret/.tmp` set my_ypass=`awk '/Yahoo:/ {print $2}' ~/.secret/.tmp` set my_del=`rm -f ~/.secret/.tmp`
Note: All user-defined variable must start with “my_”.
Step 3b: Now set up mutt for IMAP: (let’s say for GMail)
set imap_user="gmail.username@gmail.com" set imap_pass=$my_gpass set folder="imaps://gmail.username@imap.gmail.com:993/" set spoolfile="+INBOX" set postponed="+[Gmail]/Drafts" set record=+[Gmail]/"Sent Mail"
Step 3c: Now let’s say we want to use Yahoo’s SMTP service to send emails: here’s how to set it up in ~/.muttrc:
set smtp_pass=$my_ypass set smtp_url = "smtp://smtp.yahoo.com:587" # using port 587 for TLS set from="yahoo_username@yahoo.com" set realname="Your Real_Name"
Step 3d: Set your favorite editor to compose emails next in ~/.muttrc (mine is vim, so….)
set editor='vim + -c "set textwidth=72" -c "set wrap" -c "set nocp" -c "?^$"'
Step 3e: Other necessary things to put in ~/.muttrc:
set header_cache=~/.mutt/cache/headers set message_cachedir=~/.mutt/cache/bodies set certificate_file=~/.mutt/certificates
Step 3f: Now time for some pretty color: (add these too to ~/.muttrc)
1
2
3
4
5
6
7
8
|
color body brightyellow black (((ht|f)tps?)|mailto):( // )?[^\ "\t]*|www\.[-a-z0-9.]+)[^\ .,;\t>" >] mono body bold (((ht|f)tps?)|mailto):( // )?[^\ "\t]*|www\.[-a-z0-9.]+)[^\ .,;\t>" >] color body brightmagenta black "[-a-z_0-9.]+@[-a-z_0-9.]+" mono body bold "[-a-z_0-9.]+@[-a-z_0-9.]+" color body brightyellow black "^Good signature" mono body bold "^Good signature" color body brightwhite red "^Bad signature from.*" mono body bold "^Bad signature from.*" |
Step 3g: Some other customizations to put in ~/.muttrc:
set smart_wrap = yes set sort = 'threads' set sort_aux = 'last-date-received' set imap_check_subscribed # ignore "Authentication-Results:" ignore "DomainKey-Signature:" ignore "DKIM-Signature:" hdr_order Date From To Cc # set timeout=60 #Check for mail every minute set mail_check=5
Step 3h: Now save the file in your home directory and make it readable by none but the current user (you of course!):
$ chmod 700 ~/.muttrc
Step 4:Next create the these two directories to save mutt related stuffs:
$ mkdir .mutt $ mkdir .mutt/cache
Step 5:To render the HTML/etc messages correctly create another file ~/.mailcap with the following as its content make it readable by you only (use chmod as above)
text/html; lynx -dump %s ; copiousoutput
Change lynx to links/links2/elinks depending what you actually have on your system.
Things to do:I still cannot use multiple IMAP inboxes at a time — the account-hook / folder-hook does not seem to work. I need to spend some more time on it.
Here’s how to use multiple IMAP accounts in mutt.
References for this post: Crunchbang Linux site (my latest favorite distro!), muttrc builder, and mutt.org, of course. Another old reference from the days when mutt wouldn’t do SMTP. Also look at the references at the end of this wikipedia page. To build mutt from the source, refer to this.
References for to-do: Derkeller and mutt-users forum (from 2002!).
转自:https://nixtricks.wordpress.com/2010/05/05/mutt-configure-mutt-to-receive-email-via-imap-and-send-via-smtp/#comment-3098
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?