Mutt and PGP Reference
- The Interface
- Working with Mail Messages in Mutt
- PGP and Mutt
- Command Line Mutt
- The .muttrc file
- For more Information
- Test Yourself
Mutt is a Mail User Agent (MUA) for Unix. It is a descendant of ELM, borrowing ideas from other MUAs, like PINE and Mush. Right now it's a text mode application, not an X program. But that might change one day. Mutt was written by Michael Elkins, although many other people have contributed to the mutt coding process.top
In addition to who sent the message and the subject, a short summary of the disposition of each message is printed beside the message number. Zero or more of the following ``flags'' may appear, which mean:
D message is deleted K contains a PGP public key M requires mailcap to view N message is new O message is old P message is PGP encrypted r message has been replied to S message is PGP signed ! message is flagged * message is tagged
Furthermore, the following flags reflect who the message is addressed to.
+ message is to you and you only T message is to you, but also to or cc'ed to others C message is cc'ed to you F message is from you
Working with Mail Messages in Mutt
When you use Mutt, any incoming messages will be automatically displayed on the display. The program updates its list of messages any time that you use the arrow keys to move up and down and also every 30 seconds when you are doing nothing.
Below is a brief list of commands used to work with your messages in MUTT.
Command Description j or Down move to the next entry. k of Up Move to the previous entry. z or PageDn Go to the next page. Z or PageUp Go to the previous page. = or Home Jump to the first message. * or End Jump to the last message. m Starts a message to send to someone. d Marks a messages as deleted. u Undeletes a message. enter Views a particular message. v View any attachments on a particular message. r Reply to just the sender of a message. g Reply to everyone in an e-mail. o Order your messages. There are several options available to sort your messages by:
d - Date Sent
f - From
r - Date Received
s - Subject
o - To. This is espcially useful in messages with mailing lists and CC lines.
t - Thread. This will group your messages acccording to a message thread. That is, all the replies to a specific message will be grouped together.
u - Unsort. This will put mutt back to its default setting, which simply displays the messages in the order they are stored in the mail box.
z - Size.
c - Score. I am not completely sure what this means.
s Allows you to save a message to a file. q Quits Mutt. When you quit Mutt, you will be asked if you want to delete any messages marked for delete. The default is Yes. You will then be asked if you want to move your mail to the ~/Mail directory. Although the default is Yes, I advise against this. $ Synchronizes your mail. Any messages that are marked for delete will be deleted from the mail spool.
Mutt's Command Line Interface
Mutt, by default, stores any messages in your home directory in a folder called Mail. In my Mail folder, I have these files which contain mails that I have saved there to be kept separated from the rest of my mail:[tethys]:[5:51pm]:[/home/rnejdl/Mail] > ls abw log sent-mail tech eanderson nancym sig.txt trash inbox outbox sysmon vantive [tethys]:[5:51pm]:[/home/rnejdl/Mail] >
To view messages in a folder, I can run mutt with the -f flag and specify a specific folder. If, for example, I wanted to see the mail on the tech list, which is stored in the file called tech, I could run the following command:[tethys]:[5:51pm]:[/home/rnejdl/Mail] > mutt -f tech
Pressing enter at that point would open up mutt with any mail stored in that file.
Mutt has many other options with more details listed in the man pages, but a brief listing of the more interesting command options is below:top-H Specify a draft file that contains a header and body to use when starting messages. -c Specify a carbon copy recipient for all e-mail messages. -a Attach a file to your messages, such as a signature file.
PGP and MuttTo use PGP with MUTT, you must first generate a PGP key. Use the following instructions to generate a PGP key:
- Make sure that you are in your home directory.
- Check to see if you have a .pgp directory. If you do not then type mkdir .pgp.
- Next, generate a PGP key by typing pgp -kg.
- Select "3" for the 1024-bit encryption.
- Type your real name followed by your e-mail address in angle brackets, like this:
Rusty Nejdl <firstname.lastname@example.org>
- Type your passphrase. Use a password that is difficult for others to remember and easy for you to remember.
- Retype your passphrase.
- It will ask you to start generating the key. Just keep typing random letters until it says "Enough, thank you." The computer uses the times between each keystroke to generate a random seed key to create your key.
- At the command line, type: mutt
- To send someone a PGP key using mutt, do the following:
- Press Esc and then the letter k
- Enter the e-mail address of the person you want to send the key to.
- Enter a subject for this e-mail.
- Enter the key ID. In this case, type your username and mutt will pull up a list of PGP keys. If there is only one key listed, press enter.
- Finally, press y to send the e-mail.
The .muttrc file
The .muttrc file controls the look and feel of your mutt e-mail client as well as information such as your e-mail address and real name. Below is an example of a fairly robust .muttrc file. This file contains examples of most of the configuration options that are used within mutt.
If this configuring your mutt client to this level is beyond your needs, then there is an online tool that will build you a .muttrc file using a web interface located at mutt.netliberte.org
There is one line below that may be needed if you are having problems with mutt and PGP. If mutt is not able to find your PGP key, you may need to add a line that says source /usr/home/rnejdl/pgp2.rc to your .muttrc file. The file that was sourced can be found using the located command. On shell.training.verio.net, this file is located at /usr/local/doc/mutt/samples/pgp2.rc. More information on this can be found at www.mutt.org/doc/PGP-Notes.txt.top#source ~/.mail_aliases set alias_file=~/.mail_aliases set hdr_format="%3C %Z %[%b %d %H:%M] - %-22.22n %s" #set hdr_format="%3C %Z %[%b %d %H:%M] - %-22.22n %s" set pager_format="[%C/%T] %s %> %n" set attribution="%n(%u) wrote:" #set status_format="-+ %v +-+ !*&$@: +-+ [New=%n] [Sort=%s] [Messages=%m] " source /usr/home/rnejdl/pgp2.rc set editor="/usr/local/bin/vim" set alternates="(rnejdl\@*.ringofsaturn.com)|(rnejdl*\@.+.verio.net)" unset autoedit set copy=yes set askcc set noconfirmappend set noconfirmcreate set delete=yes #set force_name set auto_tag set help #set hold set include=ask-yes set indent_str="> " set signature="~/Mail/sig.txt" #set sig_dashes set nomark_old #set mbox=+4.1999 #set metoo set sort=reverse-date set move=ask-no #set point_new set noprompt_after set quote_regexp="^[>|\#:}] *" set read_inc=50 set record= =outbox set resolve set fast_reply set postponed=~/tmp/postponed set reverse_alias set save_name set shell="/usr/local/bin/tcsh" set status_on_top set tilde set timeout=60 set tmpdir=~/tmp #set use_mailcap=yes set write_inc=50 #set pager_index_lines=5 ignore * unignore from: to cc date X-Smack X-World X-Team X-Mailer color status brightwhite blue color body brightred black "((http|ftp)://|mailto:)[^ \n\t]*[^., \n\t>]" color tilde brightcyan black color indicator brightwhite red color hdrdefault brightwhite black color message brightmagenta black color bold brightgreen black color error brightyellow black #color quoted yellow black #color quoted5 yellow black color tree brightblue black color attachment green black color quoted green black # quoted text color quoted1 magenta black color quoted2 red black color quoted3 green black color quoted4 cyan black color quoted5 yellow black color quoted6 magenta black color quoted7 red black color quoted8 green black color quoted9 cyan black #mono status bold mono body bold "(ftp|http)://[^ ]+" #mono tilde bold #mono indicator bold macro compose P "p,e" macro compose Y "p,f" macro index ^[d "D.^M"
mailboxes /var/mail/rnejdl my_hdr From: Rusty Nejdl my_hdr X-State: Dazed save-hook email@example.com =mutt save-hook firstname.lastname@example.org =mutt
For more Information
More information on Mutt and its configuration can be found at some of these URL's listed below:
The home page of Mutt can be found at www.mutt.org
A comprehensize guide that goes further into Mutt and its usage can be found at www.mutt.org/doc/manual/manual-2.html
mutt.netliberte.org allows you to build a .muttrc file by using a web interface.
Feel like you've learned a bit about MUTT, then take the Mutt and PGP Quiz.