Notes on what I did to configure Thunderbird.
For years, I was a devoted Alpine user. And before Alpine it was Pine. Pine/Alpine is a text based MUA which was highly flexible. I need this flexibility because I don't know anyone who uses email as hard as me. After years of Alpine , I finally got to the point where I needed something new. Alpine solves a number of problems for me.
Making the decision to switch over is somewhat of a commitment. I'm documenting what I did so that it might help others. The changes I have made fall into a number of basic categories:
Note that the native configuration breaks apart into Preferences and Account Settings. It was not always easy to understand which was which
Before we get started, I need to give you a list of links for how to get Thunderbird and all the rest of places that I found useful to get me set up.
Let's start with the home page for Thunderbird There's not much to say except that this is where you go to download.
The next most important link is for the mozillazine forums. This is where you find the forums that discuss Thunderbird as well as Firefox (and other stuff too). Register here to create an account for yourself.
You will also want to know how to get to the root of all Thunderbird Addons. Much goodness to be found here. Should I try it? Will it break something? So far, nothing bad has happened. See how many people have grabbed something, how many have good or bad things to say, and you can make a fast informed choice.
As you will see below, I do use Enigmail. for Enigmail that is as good as the forum for Thunderbird.
Thunderbird does not have the ability to look at your local mail files. Initially, that bothered me and caused me to think about using evolution instead (which does support local mail). OTOH, Thunderbird says you have to use pop3 or imap. The bottom line is that I went for it, and set up dovecot which is the IMAP server for linux. AFAICT, it's a good tight piece of work and seems to be working fine for me.
So the first thing is to set up dovecot. Setting it up wasn't a big deal. I shut off IPV6 and only enabled imap and imaps. I don't yet have the imaps stuff working so neither are open to the firewall. Obviously, when I get to the imaps stuff then I can open imaps up to the firewall.
The only other thng that needed to be set was where to find the mail files:
This seemed to do the trick:
mail_location = mbox:~/mail:INBOX=/var/mail/%u
This turned out to be a huge pain. I have a half dozen addressbooks and I had all kinds of trouble figuring out how to get them migrated over. The basic gist of it is this:
Now comes the fun part. You have to edit the vcf file and change the email addresses. What looks like
"Alfred E. Newman" <>
has to be changed to
I use emacs so it's not a big deal, but if you don't do this then Thunderbird will get horribly confused.
BTW, your ability to import the vcf files will depend on getting MoreFunctionsForAddressBook .
I also added an addon to Thunderbird called Auto Address Cleaner, that was supposed to help. It did help, and I still have it installed, but the real fix is to get the data into the addressbook correctly in the first place. Is this a bug in Thunderbird? Absolutely. This is a workaround, but it works.
NOTE: If you selected addresses from an addressbook in Alpine to be saved, then when you go to another addressbook to save more addresses, the previous addresses will not be deselected. This means that you will end up with duplicate addresses in your new Thunderbird addressbooks. This took me a while to figure out.
If you have Alpine address entries with more than two email addresses then they can not be exported to Thunderbird. You'll have to build them manually in Thunderbird. In Thunderbird, an address list is a seperate construct from an address card. The Thunderbird address cards only have room for two email addresses. You will need to build any mail lists manually from your Alpine address entries which have more than two email addresses.
I have a number of addons to my Thunderbird configuration. I expect that these will change but this is the score as I write this. Today I'm running Thunderbird 2.0.0.21 under Fedora 10.
Here are the list of addons.
One of the big reasons I went to Thunderbird in the first place is because I decided that I want to now sign and possibly encrypt my email. Alpine has support but it's really sort of cobbled. I found something for Alpine that worked, I modified it to be what I wanted it to be (not a lot of good reasons for the mods), and I had looked at a number of choices that had attacked the problem of doing PGP key management for alpine . At the end of the day, alpine had a number of systems, all were relatively old, not being actively supported, and Enigmail looked really good.
I have GnuPG2 installed, as well as KGPG, and Seahorse. I can pretty much do anything I want from inside Thunderbird using the Enigmail interface.
I do want to say that as much as I have read on the subject, I am new at signing and encrypting my email. It's very possible that if you know something on the subject and you think I'm doing it wrong, then please let me know.
Having said that, I think I've decided to sign inline and not use the attached signature mechanism that Enigmail provides. OTOH, all the mail that I get that has an attached PGP signature seems to verify quite nicely.
As I mentioned earlier, I installed Auto Address Cleaner. It's very straightforward, lots of people use it and like it. I'm not sure that I need it now that the data in my addressbooks are the way I like them, but I can say that if your addresses are not the way I describe, then you will need this addon.
Update: This tool is now removed. I took it out because I actually did not understand what it was doing and I thought it was doing something else. In fact it is documented properly. The problems I had earlier with the addressbook are related to a Thunderbird addressbook problem, but I solved that problem by not populating the Screen Name field. The bottom line is that when I send to "Alfred E. Newman" <> I don't want the recipient to see that I sent it just to .
Not all email will behave itself nicely when you try to reply to it. I don't understand when and why it happens, but sometimes when you try to reply to a message, it will look like you're replying to one very long line, instead of to a message that has an angle bracket at the beginning of each line. I found AutoRewrap which was written just for this purpose. Note that it was not found on the place where Addons are found. I don't know why. In any event, I installed this and now I don't have the problem any more.
Sometimes you get email that you want to reply to or forward. And sometimes those messages have FWD or fwd at the beginning or the end, or sometimes it has multiple "RE:" or "Re:" at the beginnning. I found Clean Subject which seems to fix the problem. I have had no complaints. The config may be more complicated than what you'd like it to be but in all honesty, it may be because you might be trying to do something more complicated.
I frequently have to send mail to people that has standard text components. There are a number of things out there, but I ended up settling on something called Clippings . I simply define a flexible system of clips and paste them into my message whenever I want to. NOTE: You can not insert a text file inline into your message from Thunderbird. You can attach a file but you can't insert a file inline into your message. I believe there is an addon that will provide that capability but if I remember correctly, it added a lot of stuff I didn't want and Clippings kept things simple.
If you are writing a message, one of the things that Thunderbird gives you is the ability to have an addressbook in the left side column of your composer window. If you do this then you'll have a To: and a Cc: button to use to add addresses to your recipient list. I found something called Contacts Add BCC button. It does exactly what you think it does. There is something else called Contacts Sidebar which I have not yet tried and seems to have a lot more features. I'll get to it.
So here I am in my new Thunderbird, I'm editing a new message to send to someone and I want to do the editing in emacs. Thunderbird does not have a provision for an external editor. Fortunately, I found External Editor to give me the option. You can set a toolbar button on your composer window to get there or Ctrl-E will do it also. Also, you want to compose your email using flowed text. This really means that your paragraphs will be exactly one line long. External Editor recommended a thunderbird email majormode and that seems to work quite well also. Just download and then add
(require 'tbemail)
someplace appropriate and the .eml files will automatically be edited in tbemail major mode.
When you configure Thunderbird, you choose whether you want to forward messages inline or as attachments. Sometimes you need to be flexible and the Forward Addon gives you that choice by giving you a small pull-down on the right of the forward button. Ta da.
I have Lightning added to my setup. Lightning is the Calendar/Task Manager addon. It's not bad. I use it and I thank the Open Source Community that I'm at least not forced to use uSoft Outhouse. Hey, the price was right.
Besides reading, forwarding and replying to your mail, you can also bounce your mail. Alpine gave me that capability but Thunderbird does not support it. I found Mail Redirect which gives me that capability. It seems to work fine and I now have a Reply, ReplyAll, Forward, and a Redirect button on my toolbar.
See my section above on importing vcf files to port your addressbooks. You will need MoreFunctionsForAddressBook to give you the ability to import vcf files.
In Alpine , I had the ability to configure my index for my different folders any way I wanted them. In particular, I don't need to see the sender in my Sent-Mail folder because it's always going to be me. Conversely, I don't need to see who the mail is sent to in other folders because I'm always the recipient. Thunderbird doesn't really give you the ability to configure this and the result is wasted space in the index display. I found Show InOut which adds two more columns to your index. One is a narrow icon indicating direction, and the other is the relevant correspondent. Problem solved. Just get rid of the Sender and Recipient from your index. On thing I should mention, I noticed that there is a way to use different icons but I both don't like the supplied icons and have not yet taken the trouble to figure out how to change them to something I'd like better.
With all these Addons, I found one more ring to bind them all and in the darkess rule them. Update Notifier will look for updates on whatever addons you have and take you through the process.
I have a need to be able to modify my From line from time to time. I don't do it for any nefarious purpose, and sometimes the addresses I have to use are not my own. This was no problem in Alpine , but was not obvious in Thunderbird. Thunderbird has two things that together pretty much solve my problem. The first is that Thunderbird allows you to configure Identies as a part of your Account. Multiple Accounts can each have multiple Identities. Those are really for use for email addresses that I actually own, but it's not a good solution for arbitrary addresses that I would only use on very rare occasions. For this, there is the Virtual Identity Addon. This Addon is somewhat complicated to configure and I first tried to shut things off that I thought I didn't need. That only resulted in the package being disabled. I spent some time with the online documentaton and it now seems to behave better. I clearly need this, but between the complexities of Identity management and the complexity of parameterizing Virtual Identity, it's clear that this is something that should be easier to use. Yes, I understand that I have not gone into detail as to what's hard about it. Real Soon Now.
I found this toy called Smooth Wheel. Lots of people liked it, it does what it claims, lots of config options, and it works on Firefox as well as Thunderbird. What's not to like?
Sometimes you just need an Umlaut. I found abcTajpu which gives me access to literally every kind of character I could ever want. Everyone liked it. No one seemd to have any problem with it. Lots of config options that I don't care about to correspond to the few times that I'll need it.
I just added Console 2. It's supposed to be a better Javascript console. Still learning about it.
Thunderbird doesn't like to Reply with the attachments that came with a message. I found withAttach to provide a solution. It doesn't do exactl;y what I want but it gets me there. When I reply, the new message comes up with an attachment window but the window is not populated. I'd prefer it if it was. Also, note that at the time I got this, I found the version 2.5.2 was on the authors website but that the version on the addons page was 2.5.1.
That's it for the Addons.
Now we can look at the things I have changed in my configuration file. The prefs.js lives in your Thunderbird configuration. I have no idea how Winbloze works but in Linux you'll find it in ~/.thunderbird.
You can get to all kinds of preferences through the Edit -> Preferences menu, and there are all sorts of other things that are accessible through Edit -> Account Settings. What I'm focusing on here is the content of the prefs.js file which can be edited byEdit -> Preferences -> Advanced -> General -> Config Editor
You can edit these settings using the Config Editor or you can exit Thunderbird and edit it using the editor of your choice. Just don't edit it while Thunderbird is running. That's something that George Bush would do.
"id1,id2,id3"
and you would then have lots of definitions for things that were prefixed with mail.identity.id 1,2 or 3.The N in idN that I refer to is some number, but the value of this variable is a CSV of variables and values which are now in need of definition. The purpose is to define headers for your email that will be added if you select this identity when you compose a message. So, for example, if you want a Foo header to have a value called Bar when using the third Identity, then you will add (something like) mail.identity.id3.headers
with a value of "Foo: Bar"
.
One thing I found out the hard way is that it doesn't help to define a To: header this way if you're always going to use an identity to send to a particular address. The additional headers don't get added until after the Send button is hit. Before that Thunderbird will complain that there are no recipients.
I have mine set to 2. The choices are documented . The fact is that there's a known bug in Thunderbird that prevents you from using the strftime(3)
formatting strings to get it right. I just wanted my reply header to contain the time that the message was sent but in the timezone that it was sent from. Alas, not today.
I was not happy with the way threading was displayed. I found this link on thread management which told me to set mail.thread_without_re
to false and mail.strict_threading
to true. The problem was that if I have a thread and I delete the first message where the rest are children, then the next one after the deleted one is shown as the parent. Not cool.
Besides setting things in the prefs.js file, there are lots of things that you can get direct access to if you can just find them in either the Preferences or Account settings.
In the Edit -> Preferences -> Advanced -> general -> "show only display name for people in my address book"
I found that I needed to uncheck that option. Life was very complicated trying to figure out who the mail was sent to before I fixed that.
I take my spam very seriously. How serious am I? I'm running + spamassassin + spamass-milter + clamav-milter and then whatever gets through, which isn't very much, gets reported to spamcop . In addition, I also recently got an account over at knujon . And because the small amount of spam that does get through needs to go through Bayesian retraining, that aspect of the equation needs to be factored in as well.
It turns out that Thunderbird has nothing that will allow me to pipe a message to a program. So until I find something better, I have to manually save each message to a file and then run my script using that saved message as input.
Here's the spam script I wrote:
#! /bin/bash
tfile=/tmp/spam.$$
cat > $tfile
mutt -a $tfile -s 'spam submittal'
sa-learn --spam < $tfile
rm -f $tfile
Obviously, the xyz account is a phakeroo. But note that the script does nothing to get the spam to knujon , even though I went out of my way to set up an account with them. The solution is that when you set up your spamcop account, there is a preference you can set to cause copies of your reports to go to knujon . Look in
Preferences -> Report Handling Options -> Public standard report recipients
Just set your knujon address in that field and they'll take care of the copy.
Also, I use a utility called spamcup that allows me to confirm all of the spamcop messages that I report. Run that from the commandline and it all gets confirmed at once.
Note that spamcup is just a small perl program that is no longer active, but it still works. And the alternative of not using it is quite horrific.
BTW, if anyone can figure out how to pipe a message from Thunderbird, please let me know.
There are a few things that just don't work right. I do try to track them down, but in some cases, the problem is well known, loudly complained about and persists.
I want to bounce a message to an address. I have the Mail Redirect addon to deal with this. One problem I have is that it does not allow me to bounce an attachment. I use the word bounce in the Alpine sense of the word. The word redirect should always be used instead because people will interpret bounce in the backscatter sense of returning spam to an incorrectly perceived spammer. If a spammer sends a message to a managed list and that message does not get picked up by my spam filters. The list manager traps the message and sends it to me for disposition. I want to cancel the message to the list (no problem) but I also want to bounce the attachment (which was the original spam) to an address that is set up to pipe to a spam false negative processor. This addon won't let me do that. It only works on the original message.
Also, I spoke with the author who tells me that he is no longer maintaining it. He knows about this problem but is no longer supporting the addon.
I have no way to pipe a message to an arbitrary program. The previous item is a hack that I wanted to do only because the ability to pipe does not exist. Discussions of this problem go for years with no one thinking that they will take it on, even as an addon. I don't have any idea whether it would be hard, or even if it would be an easy linux thing to do even if it didn't work for windows.
There is no way to directly reply to an attachment. If a message has an attachment that is an email message, the only way to reply to the attachment is to first open the message, and then you get to reply to it. This is something that clearly has a workaround, and I guess I'm grateful for that, but it falls into the category of something that people have been complaining about for years and has not been addressed.
If you right click on an address in the list of recipients, you are given an option to copy the address. The address you get copied is the simple email address and not the address with the fullname (even though it is available and highlighted by your mouse). There is no way to select the whole address with fullname.
I want to include the text of a file in my message. Currently I would have to either jump to emacs using External Editor, or if the text is commonly used, define it as part of the managed Clippings that I have as an addon.
I want to allow the Reply header to say
fullname
if the email is available. That's not an option now. If the fullname is there then it gets used without the email address.
I want the time on the reply header to contain the timezone.
user_pref("mailnews.reply_header_locale", "en_US.utf8");
will probably do it but not until Thunderbird 3. It was referenced even though there was no ref to needing Thunderbird3. See This guy's work.
Refs to consult are here. This addon might be useful.
Also, the valid values for what to set LC_TIME to are listed by running locale -a
Also, it's not clear whether there is a mixup in the order of precedence between LANG, LC_LANG and LC_TIME.
Also, here's a good trick on how to see how an LC_TIME is composed.
I want to be able to apply operations the same way that I can in alpine . This means that I want to be able to reply to multiple messages and have all of the quoted text in all of the messages appear in the body of the new reply. Instead of replying, I should be allowed to forward a group of messages, with the choice of inlining the forwards or having them be attachments.
This capabilty does not seem to exist, even though lots of people seem to want it.