October 7th, 2010 Fixing GrowlMail to work in Snowleopard
If you have a Mac, you should have Growl. Growl is one of the most awesome utilities you can get for your Mac. If you have Growl, and you like those handy little popups that tell you what your applications are doing in the background, you’ve probably installed GrowlMail.
Growlmail is a plugin which allows you to see new email messages as Growl messages when you receive them. The problem is, Apple’s Mail.app doesn’t have any native support to push out those sorts of notifications to applications like Growl. Not to worry; The developers produced what’s called a “mailbundle” which allows Mail.app to talk to Growl, so Growl can give you your delicious notifications.
Growlmail was released years and years and years ago, and has worked perfectly… until the release of OS X 10.6, Snowleopard. Starting with the first install, each and every time you update Mail.app, you see this:
Incompatible Plug-ins Disabled
Mail has disabled the following plug-ins:
Contact the makers of these plug-ins for versions
that are compatible with Mail 4.3 and Message 4.3.
Wondering why this might be? Well, the GrowlMail website has the explanation:
Why does GrowlMail keep breaking under Snow Leopard?
Because Apple keeps breaking it.
Starting with Snow Leopard, Mail requires every Mail plug-in bundle to explicitly state which versions of Mail and the behind-the-scenes Message framework the plug-in is compatible with. This is not an “or later” test: The plug-in must identify every specific version it is compatible with, and if your versions of Mail and the Message framework are not on that list, Mail will disable the plug-in and tell you to seek a version that is (explicitly) compatible with your version of Mac OS X.
(You may have heard of this being an issue of “UUIDs”. These text strings are how Mail identifies versions of itself and the Message framework, so that is what we’re talking about here.)
As long as you run Mail with GrowlMail installed, we suggest that you hold back on installing a new version of Mac OS X until we can test and release a new version of GrowlMail with it, because this will probably happen with every future Mac OS X update.
This isn’t specific to GrowlMail, by the way: It affects all Mail plug-in bundles, so if you use any bundles other than GrowlMail, you will also have to wait for their authors to release updates.
The UUIDs in question are particularly unpleasant to find, because they change with every single update to Mail.app. Because of this, I wrote a utility, “Get Mail.app UUIDs” which does exactly that.
Click the icon to the left to download the utility.
How to fix it
This is pretty straightforward, so I’ll try to be brief. Once you have the utility, open it. It only takes a moment to run, and will result in a TextEdit window with two strings of numbers seperated by hyphens, like so:
Once you have those numbers, quit Mail.app. The next part is finding the folder in which the GrowlMail mailbundle is installed. For most people, this is in your local library, but for some, it’s in the system library.
First, we’ll try the local library. Copy the following:
Then switch to the finder, and type Command + Shift + G, and paste the link into the window that appears.
After clicking Go, you will be taken to the Mail.app library folder. Within this folder, you should see a “Bundles” directory. If you’ve gotten the error listed above, you’ll also see a “Bundles (Disabled)” directory. The latter directory will contain the GrowlMail mailbundle folder. That’s where we need to go.
Open the GrowlMail.mailbundle folder, and the Contents folder within it. In this directory you should find an “info.plist” file. Assuming you don’t have the XCode developer tools installed, you will need to right click and open this file in TextEdit.
The contents of this file should be fairly easy to figure out. You’ll notice at the bottom of the file is a list of strings, with very similar numbers to the ones the application dug up. Take those numbers and enter them into that file to match the others, with a new line after each one, two tabs, then ‘<string>’, followed by the UUID number, then ‘</string>’. When you’re done, the file should look something like this:
Save it, then go back to the directory mentioned above. All you have to do here is move the GrowlMail.mailbundle folder from the Disabled folder to the regular folder. Once you’ve done that, you can launch Mail.app again, and bask in the glory of awesome Growl notifications. Huzzah!
When using the UUID app in 10.6.5 I only see one UUID in the text window that opens:
When modifying a mail bundle (Letterbox) and adding this single UUID it still says that the bundle is incompatible and disables it.
Is there any way to update the UUID app for 10.6.5 or anything I can do to get proper UUIDs for Mail so that I can get Letterbox working?
I will need to make some modifications to the script- it would appear that 10.6.5 made some changes to where that information is stored.
I'll reply to your comment again when I've uploaded the finished product.
Thanks for letting me know- my husband had the same problem last night, and I wasn't sure if it was his specific install or if 10.6.5 had changed something.