Text-based e-mail with Alpine

Jack Wallen reviews the new Alpine text-based e-mail client. Based on the old open source Pine, also developed by the University of Washington, this client has improved features, such as the ability to get e-mail from a remote server.

For many years, my favorite e-mail client was the University of Washington's Pine. In many a transparent terminal, I would have that client running solidly, with nary a crash or hiccup, for years. But then along with version 3.9.2 came a change in the licensing that wouldn't allow for modifications to the source code. So the *NIX community dropped Pine and in December 2007 the same university developed Alpine -- the fully open source version, based on Pine.

Now I have to say that my last few experiences with Pine were frustrating at best. I didn't realize the licensing issue they were putting the Linux community through so when I discovered Pine was difficult to install I was a little (to say the least) put off. Back when I was running Red Hat, installing Pine was just a matter of grabbing the rpm and then running rpm -ivh pine.rpm. But during the early stints with Fedora it turned into a nightmare of recursive dependencies that couldn't seem to be met. And eventually I stopped using my favorite, extremely lightweight and reliable e-mail client.

And then came Alpine. Using Ubuntu, installing Alpine was just a matter of issuing the command apt-get install alpine. Within a minute or so the client was installed and ready to be experienced.

I was sure the experience would be the same. And, for the most part it was. Start the client within a console, with the command alpine. Compose new e-mail by hitting the c key. Send e-mail with Ctrl-X combination. Attach files with Ctrl-J. Postpone an e-mail with Ctrl-O. It's mostly the same Pine-like goodness. I have noticed a few improvements of course. One improvement is quite a step forward for this little mail client: inbox server configuration.

When I used Pine before I had to use it in conjunction with Fetchmail to get e-mail to an inbox Pine could read. Unless you were using a maildrop configuration, Pine (in the earlier incarnations I was using) simply had no mechanism for retrieving mail that wasn't on the local machine. No more. It turns out that in later incarnations Pine developed a means to snag e-mail from a remote location. And, because Alpine is based on Pine, it now has that ability.

In order to configure Alpine to get e-mail from a remote server, you simply configure that remote server in the "Inbox" configuration line. So from the main window, hit the s key and the the c key and you will see the list of configuration options. IN the Inbox-Path configuration option, you would enter something like this:


Where MAIL.SERVER.ADDRESS is the actually address for your mail server and where USERNAME is the actual user name. Now if you get certificate errors you can add this:


to your entry so it will look like:


Save this configuration and exit Alpine. The next time you fire it up, it is going to connect to your remote server and ask you for your password. Once your password is accepted you will find yourself in the main index where you hit the i key to go to message index.

From my experience with Pine, I can say Alpine will be a boon to myself and anyone wanting to do things like check mail remotely on a box, use a mail client that offers a tiny bit of security in that few people know how to use it, is reliable, is not prone to viruses simply because users can't point-and-click an attachment open, and runs fast as lightening.

I am happy as a clam to find my old lover again. My affair with Pine goes back a long time, and I can see myself using this little client once again for a long time to come. If you've not given it a try, you should.


Jack Wallen is an award-winning writer for TechRepublic and He’s an avid promoter of open source and the voice of The Android Expert. For more news about Jack Wallen, visit his website


I finally got alpine configured locally so I do not have to use pine on the remote server. however I have 2 problems. (1) I have lost highlight, copy paste in the local terminal when alpine is running. (2) I have to enter my password multiple times to get the remote server to acknowledge me.


I've been using pine since 1992 and recently alpine (just because it is easier to install and update). IMHO, this is what email should be. None of that HTML fluff bloated crap, just a simple, quick method for communication. I have never been infected with an email virus, I can read my email from anywhere with an SSH client and not worry that my emails are still on the computer I just left (assuming a key logger isn't running), and it is fast. If I just have to see the jumping fluffy bunnies that someone has as their background, I can choose to view the HTML attachment and it will launch Firefox. Wow. And as mentioned in the post, it just works. I can count on one hand the number of times pine has crashed on me - since 1992. Try that with any GUI client and you will need lots of hands to keep counting. I can't say enough good things about alpine/pine. It just works.