It's a logo!
About/Contact Index

Configuring Alpine

Enabling A Threaded Style

I am partial to having my e-mail, and Usenet posts, displayed in a threaded fashion. I find it makes things much easier to follow (particularly when it comes to Usenet). But for some time, I was stumped on how to go about doing this in Alpine, until I came across a couple sections in the "Setup Configuration" (M S C) dedicated to this very topic.

Start by scrolling down until you find "Sort Key"; under this, enable "tHread". Next, go down to "Threading Display Style", and select "show-structure-in-from. Finally, go down to "Threading Index Style", and select "regular-index-with-collapsed-threads". Now threading should be enabled, and it should rain $50 bills.

Checking Multiple POP3 Accounts

So, you've got a plethora of email accounts and happen to be a user of alpine who doesn't already know how to check them all using this venerable piece of software. I too, was once like that, but no more, for I found a way to check all the email accounts I could want (so long as the server supports mail forwarding), using alpine.

Start by going to the "Setup Configuration" screen (M S C) and find the Folder Preferences section. Under this section, set enable-incoming-folders and restart alpine for the change to take effect. Now go to your Incoming Message Folders (F Incoming-Folders), but don't open your INBOX folder.

Now comes the fun part.

Since you want to add a new folder, type A. You'll be presented with a command-line asking for the "Name of server to contain added folder" and four options below that. We're interested in the options. Since you're going to be pulling mail off of a remote pop3 server, you want to configure a mail drop, which is the last option, thus press Ctrl W. You'll now be asked for the name of the mail drop server (the server you're pulling the mail off of). Enter the server (and port number if you desire), your username (which may or may not include part of the server address), and pop3. When done, you should have something that looks like the following:

 pop.server.tld:port/user=username@server.tld/pop3

If you are using a secure connection, you will need to add two things to the entry. First, append ssl to the end. When that is done (and assuming you don't want, or are having difficulties setting up, certificate validation), add novalidate-cert just after the mail drop server. Once you are done, you should have something that resembles the following:

 pop.server.tld:port/novalidate-cert/user=username@server.tld/pop3/ssl

Now hit Enter. You'll now be asked for the folder you want to copy the mail from; answer: Inbox.

Next: "Name of server to contain destination folder". Leave this blank, and continue on.

Now for the "Folder to copy mail to". You can name this anything you want, but I generally use the user name of whatever email account I'm setting the mail drop up for.

And I do the same as above for the "Nickname for folder "username"".

And now you have a brand new mail drop folder. To set up more, just repeat as needed.

Service Specific Settings

Lavabit
pop.lavabit.com:995/novalidate-cert/user=username@lavabit.com/pop3/ssl
Google Mail
pop.gmail.com:995/novalidate-cert/user=username@gmail.com/pop3/ssl
Telus
pop.telus.net/user=username@telus.net/pop3

Using Multiple SMTP Servers

Once you are checking your abundance of e-mail addresses using Alpine, it will only be a matter of time until you actually want to use the SMTP services that are generally provided by most e-mail hosts (at least such was the case for myself) to send mail, and this will mean configuring Alpine so that it can use multiple SMTP servers.

To use multiple SMTP servers, you will need to configure roles for each account that will be using a different SMTP server than the default that was input in the "SMTP Server (for sending)" field in "Setup Configuration" (M S C). To do so, go to the "Setup Role Rules" screen (M S R R) and add a role, after which you should end up in the "Change This Role Rule" screen.

Start by entering the desired name for the role in the "Nickname" field. Then, under "Current Folder Type", select "Specific", and fill in the "Folder List" field below it with the incoming nickname(s) you want the role to handle.

Now you will need to scroll down a bit until the "Actions Begin Here" section; here you will need to fill in the "Set From" field with something along the lines of:

 Desired Display Name <username@server.tld>

When that is set, go down to the "Use SMTP Server" and fill in the field with something like the following:

 smtp.server.tld/user=username@server.tld

If you are using a secure connection, without certificate validation, the entry will look more like this:

 smtp.server.tld:port/novalidate-cert/ssl/user=username@server.tld

Finally for this page, go down to the "Uses Begin Here" section, and select "Without Confirmation" for each of Reply, Forward, and Compose Use. This will stop Alpine from asking what role you want to use, and instead use the role assigned to the mail folder, as defined by the "Folder List" back at the top of the screen.

For some e-mail services, (such as lavabit) this may not be enough to get things working, you may have to disable the plain authenticator. To do so, go to the "Setup Configuration" page (M S C), and scroll down to the "Advanced User Preferences" section. Under this, enable "Expose Hidden Config", save the changes, and restart Alpine. Return to the "Setup Configuration" page, and scroll down to near the bottom; there should now be a section titled "Normally hidden configuration options". Under this, locate "Disable These Authenticators" and change the field to read PLAIN. There should no longer be any difficulty in sending mail via various smtp servers.

SMTP Server Settings

Lavabit
mail.lavabit.com:465/novalidate-cert/ssl/user=username@lavabit.com
Google Mail
smtp.gmail.com:465/novalidate-cert/ssl/user=username@gmail.com
Telus
smtp.telus.net/user=username@telus.net

Using Multiple NNTP Servers

To set up Alpine to use multiple NNTP servers, start by going to the "Setup Configuration" page (M S C), and scroll down to the "Advanced User Preferences" section. Under this, enable "Expose Hidden Config", save the changes, and restart Alpine. Return to the "Setup Configuration" page, and scroll down to near the bottom; there should now be a section titled "Normally hidden configuration options". Under this, locate "News Collections" and add the news servers you want to use, separating each entry with a comma (Alpine will break the line at each comma). In general, an entry should look something like the following:

 Desired Name {server.tld/nntp}#news.[]

If you are using a secure connection with certificate validation, the entry will look similar to this:

 Desired Name {server.tld/nntp/ssl/novalidate-cert}#news.[]

And if an insecure login is required, then things will look more like this:

 Desired Name {server.tld/nntp/user=username}#news.[]

Also, if you are using roles, you can specify the NNTP server that the role should post to Usenet with. To do so, go to the "Setup Role Rules" screen (M S R R), and select a role to edit.

In the "Change This Role Rule" screen, scroll down to the "Use NNTP server" field, and edit it as required. For the entries above, the corresponding role entries will be:

 server.tld
 server.tld/ssl/novalidate-cert
 server.tld/user=username

Reading Settings (M S C - News Collections)

Telus
Telus {news.telus.net/nntp}#news.[]
Motzarella
Motzarella {news.motzarella.org/nntp/user=username}#news.[]
Mixmin
Mixmin {news.mixmin.net/nntp/ssl/novalidate-cert}#news.[]
Aioe
Aioe {nntp.aioe.org:563/nntp/ssl/novalidate-cert}#news.[]
Ripco
Ripco {gail.ripco.com:120/nntp}#news.[]
Usenet4all
Usenet4all {reader.usenet4all.se/nntp/user=username}#news.[]
Gmane
Gmane {news.gmane.org/nntp}#news.[]

Posting Settings

Telus
news.telus.net
Motzarella
news.motzarella.org/user=username
Minmix
news.minmix.net/ssl/novalidate-cert
Aioe
nntp.aioe.org:563/ssl/novalidate-cert
Ripco
gail.ripco.com:120
Usenet4all
reader.usenet4all.se/user=username
Gmane
news.gmane.org

Filters As Killfile Substitutes

To ensure that your Usenet experience is as glorious as possible, most every news reader out there allows you to make use of killfiles to block spam and stupidity before they infect the reader. Of course there is at least one exception: Alpine. But while Alpine has no killfile setting, it does have filters which can be made to do the same thing.

Start by going to the "Setup Filtering Rules" screen (M S R F), and adding a filter (by pressing A). Give the filter a nickname, and under "Current Folder Type", select "News", thus applying the rule to all news accounts (it's most likely possible to apply the rule selectively by selecting "Specific" and filling the desired new account(s), but I've not yet tried this.

Next, select the header (or headers) you want to use to filter news posts, and fill in the string you want to filter out. If the header you want to use is no present, go down to "Add Extra Headers" (it should be in the middle of the list), hit enter, and fill in the header name as it appears in Alpine (as an example, to add the Message-ID header to the list, type in Message-ID and you are done), and hit enter when done. You will now have a brand new header to use for filtering posts.

Finally, go down to the "Action Begins Here" section, and under "Filter Action" select "Delete"; the job is done. Save and exit (in Alpine's particular fashion, i.e. exit to save) and the filter will be applied the next time you open a news group.

Service Specific Settings

If you want to filter out posts from Google Groups, add the Message-ID header, and in its field type:

 googlegroups

To filter all responses to Google Groups posts, add the References header and put the following in the field:

 googlegroups

Looks familiar, doesn't it.

And to filter out posts from Microsoft Outlook users, add the X-Newsreader header, and in the field type:

 Microsoft Outlook

Depending on the news group, the resulting filtering action may take a couple seconds to complete, but the results are worth it.

If it is a particularly active news group though, you can waste a lot of time waiting for the filters to do their thing. To cut down on the waiting, it is likely a good idea to set the "NNTP Range" value (M S C) to something other than the default (which is 0, and which translates into: download everything in the group that isn't nailed down).

On a further speed related note, you may want to enable "News Post Without Validation" (M S C) in order to speed up posting.

Additional Help


About/Contact Index