I had just rebooted after installing the 10.8.4 update, I went and opened up OS X Mail and got a pop up telling me that my plugin TruePreview was not compatible and I needed to check with the developer. I checked the developer’s website and it had not been updated yet. Only one day into the 10.8.4 update I wasn’t counting on an update.
I rely on this this plugin not only at home, but at work too and wanted to get it working again as soon as possible. For those of you that don’t know the TruePreview plugin gives you the ability to customize when email messages are marked as read. I do not like the fact that in Mail when a message is clicked on and the preview window is up it marks the message as read. TruePreview lets me disable automatically marking messages as read.
Having come across this incompatibility with other plugins and previous OS updates before I knew that the fix was fairly simple.
A word of caution: Apple breaks these plugins during software updates for a reason. It is typically done when the code within the application has been changed and triggers the developer to check their application for compatibility/changes and provide an update if needed. There is no guarantee that if you do this your plugin will work or worse you could possibly destroy data, etc. Please proceed with caution.
So how do we fix it?
The first task is to get the two new UUIDs for Message and Mail.
1) Open up terminal and copy and paste both lines of code individually and hit return after each.
defaults read /Applications/Mail.app/Contents/Info PluginCompatibilityUUID
defaults read /System/Library/Frameworks/Message.framework/Resources/Info PluginCompatibilityUUID
2) You should get a long code (provided below) after each command. These are the new UUIDs for Mail and Message. We will need to eventually add both of these UUID’s to the plugin’s “info.plist”.
3) Open finder and browse to the Mail folder location that resides in your user Library folder.
Hint: the “Library” folder is not visible by default in 10.8.x so hit the following 3 keys (“Apple”,”Shift”, “G”) and copy and paste the text below into the window and hit “Go”.
4) You should now see a folder called “Bundles(Disabled)”. Under that you should see the name of your plugin folder(mine is TruePreview.mailbundle), go ahead and open that folder. Next open the “Contents” folder.
5) You should now see an “info.plist” file. Go ahead and open that up. I prefer to open it with a plist editor like the one built into xcode, but text editor will work too. Just make sure to follow the same formatting used for the previous UUIDs.
For simplicity I will use the plist editor built into xcode. You should see a file like the one below.
Notice the key named “SupportedPluginCompatibilityUUIDs”, we will want to expand that by clicking on the triangle to the left of the name.
6) You should now notice a list of number items with a value listed that is similar to our 2 UUIDs we retrieved in the first step. We will need to add these to the list.
7) To add our retrieved UUIDs to the list simply go to the last “Item” in the list (on the screenshot it would be “Item 10”). You will see a plus appear, go ahead and click the “+” twice to add 2 more items to the list.
8) Next Copy and paste the first UUID into the new “Item”. Now copy and Paste the second UUID into the next item.
UUID’s retrieved from the first step:
9) Your plist.info should now match the screenshot below with the 2 new UUID’s added. Go ahead and Save and Close the “info.plist”.
Now go back into the Finder and copy your plugin folder from the “Bundles(Disabled)” folder and paste it into the “Bundles” folder. Now re-open Mail and the plugin will now hopefully function again.