Today every program is a very complex project with several years of development and the consequence of millions of code developed by hundreds of programmers. Until there nothing new really. Even a simple program as a mail client is bloated with features we will never need on a day to day basis but, nonetheless, requires a lot from our pc resources. Programs like mozilla thunderbird or microsoft outlook are almost as complex as operative systems and have a memory footprint that is as high as well. For many of us that prefer a lightweight client that enable us to see and send mail without all the fuss of typical modern email client there are alternatives, being one of them the well known Mutt email client. If you checkout the homepage of the project you'll see that the program is from 1995 which means that is more than twenty years old, I mean, its mature.
Mutt is a program that is not intended for the common computer user. It is shell based and don't have a wizard gui based to help you setting up POP and SMTP servers, and this can be a pain in the ass. On the other side it isn't a behemoth that sucks every cycle of your processor available all the memory space and it doesn't cause starvation to your computer thread pool. For those whose the well being of the computer is more important than the beautiful look of the widgets and windows this is a tool to take into account.
Now that we presented the key ideas behind the use of a program like Mutt lets start by showing how to setup it in a debian base linux distribution. Well first, obviously, you'll need to install it
sudo apt-get install mutt
should do the service. Then you must setup your server by creating a configuration file inside the hidden folder that will hold the setup for your user
mkdir ~/.mutt touch muttrc
Then you must edit the muttrc file and add all the necessary information regarding email user account, POP/IMAP and SMTP servers. For instance my setup has the following setup
set mbox_type=mbox set mbox="~/Mail/inbox" set spoolfile="~/Mail/inbox" set folder="~/Mail" set record="~/Mail/sent" set postponed="~/Mail/postponed" set my_name = "Balhau" set sort_aux=reverse-last-date-received set sort=threads set sort_re macro index G "!fetchmail\n" "Invoke fetchmail" macro pager G "!fetchmail\n" "Invoke fetchmail" set my_pass='mypass' set my_user='myemail' set realname = 'Balhau' set from = 'firstname.lastname@example.org' set use_from = yes set smtp_url=smtps://$my_user:$email@example.com set ssl_force_tls = yes # My email address set pop_user="mypopuser" # My email account password set pop_pass="mypoppass" set pop_host="balhau.net" set editor=vi
Here you can find a screencast with a example on how to send an email using Mutt.