CUIメーラ——NeoMutt


NeoMuttとは

neomutt(1)はコマンドラインで利用できるメールクライアントです。名前の通り、メールクライアントmuttからforkしたソフトウェアです。

CUIでメールクライアントを使う利点として省メモリ・省スペースが挙げられます。特にtmux(1)と組み合わせて使うと、ひとつの画面でメールを見ながら作業したり、メールを書いている途中で調べものをしたりするのが楽になります。Thunderbirdではメールへの署名や暗号化にプラグインが別途必要ですが、neomutt(1)では標準でその機能が提供されています。

インストール

pkgsrc(7)ではmail/neomuttパッケージとして提供されています。SMTPサーバへの認証にsecurity/cy2-plainパッケージも必要です。

# cd /usr/pkgsrc/mail/neomutt
# make install clean clean-depends
# cd /usr/pkgsrc/security/cy2-plain
# make install clean clean-depends

設定ファイル $HOME/.muttrc

ここではGoogleのGmailアカウントを使ったメール送受信をneomutt(1)上で実現します。neomutt(1)の設定ファイルは$HOME/.muttrcです。

ユーザ名とパスワード

Gmailアカウント名とそのパスワードを変数に格納しておきます。

set my_user = "Gmailのメールアドレス"
set my_pass = "パスワード"

IMAP

IMAPでメールを読めるように設定します。

set folder = "imaps://$my_user@imap.gmail.com:993"
set imap_pass = $my_pass
set spoolfile = +INBOX
mailboxes = +INBOX
set header_cache = $HOME/.mutt/cache/header
set postponed = +[Imap]/Drafts
set record = +[Gmail]/sent

SMTP

メール送信のためにSMTPサーバの認証の設定を書きます。

set from = $my_user
set use_from = yes
set editor = vim # 任意のエディタを書く。

set smtp_url = "smtps://$my_user:$my_pass@smtp.gmail.com/"
set ssl_force_tls = yes
set ssl_starttls = yes
# If smtp_authenticators is ``unset'' (the default)
# NeoMutt will try all available methods,
# in order from most-secure to least-secure.
unset smtp_authenticators

パスワードを平文で書きたくない場合

パスワードを平文でファイルに書きたくない場合は、あらかじめパスワードの文字列をGnuPGで暗号化しておき、neomutt(1)が設定ファイルを読み込むときに復号するような設定をします。

安全のためメモリファイルシステム上にset my_pass = "パスワード"という内容のテキストファイルを作ります。GnuPGでそのファイルを暗号化し、元のテキストファイルを削除、暗号化されたファイルを$HOME/.muttディレクトリ以下に移動してください。そしてset my_pass = "パスワード"の代わりに以下の設定を使ってください。

source "gpg2 -dq $HOME/.mutt/password.gpg |"

使い方

設定ファイルができあがったなら、neomutt(1)を実行します。簡単な使いかたは画面上部に表示されています。