Contents |
| Warning |
|---|
| Please understand that the software and documentation provided here is mostly not written by the KMail team, so they cannot provide support for it. In fact they often cannot even test these applications - use at your own risk. Some of these utilities are extremely old |
You should first try to import your old mail using KMail's menu.
If you need to import mails and directory structure from Outlook, you can use Thunderbird (Windows version) to import Outlook data, then you can use the Kmail import from Thunderbird and point the directory where theThunderbird data has been saved.
If that doesn't work, the following programs might be helpful:
Script to filter by header (by Marc Mutz)
This perl script can be used with a pipe through filter action after a action. It's useful for people who want to change certain headers based on the content of other headers. This is something KMail filters currently do not support, but is useful here and there.
This particular script replaces (if used in conjunction with the action) the Reply-To header of mails sent from a Debian-style bugtracking system with <bugno>@bugs.kde.org. This is useful if bug reports are delivered to developers through a mailinglist that overwrites the Reply-To header with its post address:
#!/usr/bin/perl
$endOfHeader = 0;
while (<>) {
if ( $endOfHeader == 0 )
{
if ( /^(?i:Subject):\s+Bug\#(\d{4,5}):/ )
{
$_ = "Reply-To: $1\@bugs.kde.org\n".$_;
}
elsif ( /^$/ )
{
$endOfHeader = 1;
}
}
print;
};
qmail delivers (with standard Maildir setup) Mail into the subdirectories of ~/Maildir/, that means, personal mail never goes to a "public" directory (e.g. /var/spool/mail/) as is the case with traditional mail transport agents.
qmail provides a command: maildir2mbox, to re-"deliver" mail from ~/Maildir/ to this namely public directory, we wrap this command into a script: qmail2kmail.
KMail is set up to read mail from the "traditional" place, but qmail2kmail is run before checking mail via the precommand directive in the configuration, so it finds all incoming mail where it is supposed to find it in a traditional setup.
Setup: My qmail binaries reside in /var/qmail/bin, which is most probably not the "right" place to put them, so fix this on your system and in the qmail2kmail script.
I installed qmail2kmail in /usr/local/bin, I suppose it should be world executable, or at least by the qmail-groups, if you are concerned about security you should know how to figure out and rewrite these instructions.
In the KMail configuration you should have something similar to:
[Account 1] Folder=inbox Name=Mi correo en TOA Type=local check-exclude=false check-interval=0 precommand=/usr/local/bin/qmail2kmail
and everything should work fine. Here comes qmail2kmail:
#!/bin/sh # # LEG06012001 # Convert Mails in Maildir format in ~/Maildir/ to mbox format in ~/Mail/inbox # as required by Kmail. MAILDIR=~/Maildir/ MAILTMP=tmpdir MAIL=/var/mail/$USER export MAILDIR MAILTMP MAIL /var/qmail/bin/maildir2mbox
Note that "tmpdir" is a scratchfile and will be overwritten, so if you happen to have a file tmpdir in the place where maildir2mbox wants to create it, you will get in trouble.
A solution would be to use the tempfile command, but it happens to not exist on every Unix, so a local solution will have to be found if necessary. If qmail2kmail doesn't run in the $USER's homedirectory (which I did not check out) I would strongly recommend to use at least:
MAILTMP=$USER/.qmailtemp
Note that I also successfully installed qmail-pop3d and fetched mail via POP3 from the local host, but it is slower and clumsier.