Sunday, June 17, 2012

Mac OS X Mail: Import Mailboxes from a different user account or computer - and Old Netscape email import

It's been a long time since I've been impressed by Apple desktop software.

Partly that's because I have high expectations, but it's also that I'm not Apple's target demographic. I prefer capability over ease of use. I'm one of the very few people who likes iTunes for example -- because of it's very powerful playlist query language. I'm not looking forward to Apple's overhaul -- because I'm certain they'll remove the features I like.

Been a long time, but today I was impressed. I'd just completed a Eudora to Mail.app conversion in a user account I created to test the import process. 

The process went well, so I planned to repeat it on my primary account. I wondered though, if there was a way to simply import from the folder in ~Library/Mail. I couldn't find much documentation or discussion on Mail.app's merging or important of another Mail.app database, but the UI is simple enough. I updated my backup and give it a try.

First I moved the 'Import Folder' in ~Library/Mail to the Shared folder for my primary machine so I could do the import from my primary account. Then I selected that folder from the Import UI. Mail.app scanned the folder tree and returned a list of a few hundred folders I could import from. I told it to go ahead.

Fifteen minutes later I had my archive. Unfortunately there was no way to know if I'd gotten all 55,000+ messages; all I had were unread message counts and those didn't match up (but I didn't trust them anyway).

Happily OS X Mail has a very clean message structure, one message is one .emlx file (attachments are in a separate folder) and files are organized by a Finder folder corresponding to a Mail.app folder.

So I used Get Info from the Finder:

  • Original: 2.36GB for 84,871 items
  • Import: 2.36GB for 84,405 items

That's not too bad, except I'm short about 466 items. Coincidentally, I recall from the EudoraMailboxCleaner process that I had 478 folders. By directly inspecting the folders in the original and the import I could see that most of my folders were missing a .plist file that was in the original. This file didn't seem to be necessary; the messages are rendering correctly both times.

So it seems the import worked.

That's good, but what really impressed me was I noticed Netscape import option. I happened to have some old Netscape archives lying around. A few minutes later and my Netscape email was in Mail.app.

Twenty years of email in one repository; 9GB, 200,000 messages - that's impressive.

Update: I wrote too soon. The message metadata displays, but the Netscape messages are all blank. (A few Eudora emails are blank too.) OS X will preview them in the file system and I can read them with a text editor. So the data is there, but Mail.app doesn't want to render it yet.

Update b: Well, that was interesting. I tried REBUILD on one of the folders. All the emails vanished. I checked in ~/Library/Mail; they were still there and still viewable. So I tried removing the plist file and then tried restore again. This time they all came back, and they're readable. But the real weird part is that now all the Netscape emails in other folders are non-blank. I didn't touch any of those.

No comments: