Summary of full conversion process:
You will need the original ancient machine running ccMail, a modern WIndows machine (or VM) and a modern Mac.
Step One:
I suggest copying the drive of the machine with the mail data, so you can work off a copy in case things go wrong. And they will. Also you can't do this with just the raw data files, unless that raw data file is already a ccMail "Archive" file. It won't work with the regular ccMail mail storage data files.
Within ccMail, you need to create a new "Archive", which is a special kind of mailbox that is readable by other apps. Then you must copy all of the email into this archive. Once you're done, add ".cca" to the name of the file. This will make it easier to work with once you copy it to Windows.
Step Two:
Copy the ccMail file to a Windows machine.
Use the
Microsoft Importer for Lotus ccMail Archives tool in Windows to convert the archive file into a .pst file, which is a microsoft outlook data file. Open outlook and the imported mail should be in there. I had lots of headaches here with Outlook not liking the file, and the importer not willing to create a new file from scratch. It occurred to me at this point that Windows functions in a very difference way than either old or new Mac OS. There's little logic involved in the way things work but just keep poking around if the apps are fighting you and it should work.
Step Three:
Getting the mail out of Windows Outlook is tricky. If you export out of there and import into Mac Outlook, you lose all of the To/From data from all of the email.
If you upload the mail to an IMAP account from Windows Outlook, you get every message encoded into a "winmail.dat" file.
Even though you'd think .pst is very common, the converter program Emailchemy does not seem able to read a .pst file.
So what you have to do is use Windows Thunderbird version 31 (Outlook import is broken in newer versions of Thunderbird, Mac Thunderbird doesn't support importing Outlook files) and import all of your outlook mail into thunderbird.
From Thunderbird, then you can upload all of the email to an IMAP server and you won't get the winmail.dat junk. Now you can access that IMAP account from any other program/platform, which for me is Apple Mail on modern macOS. But wait, there's more....
Step Four:
So one thing you'll notice is that there are lot of quotes and escaped quotes around the names and addresses on the emails, which prevents mail programs from seeing these names and addresses as proper email objects.
There's one more process to go through to fix this:
If you drag the imported mailbox out of Apple Mail (Drag the whole folder from the mailbox list) on to your desktop, you'll get an .mbox file. Except it's not a file, it's a folder. Open it up and you'll see a "mbox" file. We need to edit this file to clean up all these quotes. The process I do this by will probably drive many people crazy but I'm ok with that.
So first open the "mbox" file in TextWrangler or some equally capable code like text editor.
You need to do an unusual find & replace to re-join wrapped email header lines back into single lines again.
Replace this:
,[space][newline][space]"
With this:
Now we can run this "mbox" file through the PHP shell script (below), which will remove all of the funny characters from the To, From, Sender and Cc header lines. It creates a new mbox file that you import back into Apple Mail and....
BAM you are done.
6 months of work right here, though most of that time was me waiting for a new power supply so I could power up the PowerBook 520 again.
Can't embed the code properly, so you can view the php shell script I made on pastebin:
php mbox header cleaner