I’ve just (thanks Royal Mail!) installed Snow Leopard on my iMac and immediately ran into problems with applications not behaving properly. In some cases, they wouldn’t run at all and crashed upon launch.
For example, Activity Monitor reported some apps as using 16,777,216TB of hard disk space (I have no idea which SI unit that works out at – yottabytes..?) and Disk Utility crashed as soon as it was started. After a few minutes of panic about having to wipe and reinstall due to some mysterious bug, I figured out the problem — it’s all due to the Snow Leopard installer.
It seems that the Snow Leopard installer isn’t as thorough as it could be when it comes to detecting and replacing certain applications. Adobe Flash has already fallen foul of this — Snow Leopard installs an older, insecure version, even if you have a new version installed.
When it comes to Apple’s own applications, Snow Leopard simply installs the new ones in their own default folders within Applications (replacing any that are there), but it doesn’t bother to check if there are older versions in other folders.
In my case, I had tidied up my Applications folder and moved certain Apple applications into subfolders. These were left behind when Snow Leopard installed its new applications. In some cases, I also suspect that Leopard put certain applications into different folders to Snow Leopard — Leopard’s Disk Utility was in Applications/Utilities, while SL’s is in Applications, for example, and I’m pretty sure I didn’t move it.
From The Mac OS X Reference Library, this is how the installer works:
The Mac OS X Installer uses a file system “bill of materials” to determine which files to install, remove, or upgrade. A bill of materials, bom, contains all the files within a directory, along with some information about each file. File information includes: the file’s UNIX permissions, its owner and group, its size, its time of last modification, and so on. Also included are a checksum of each file and information about hard links.
So it seems that Snow Leopard simply uses a set list of folders to look for files to replace and doesn’t look elsewhere on the hard disk for applications. I guess this is understandable, since you may have other non-Apple applications with the same name as Apple’s ones — though I’m sure there’s some fingerprint that can be used to track down Apple Chess, no matter where on the disk it is.
The upshot of this is that post-Snow Leopard install, you may still have old applications in the Dock or indexed in a launcher like QuickSilver, and you’ll have problems when you try to launch them — like I did with Activity Monitor and Disk Utility. The solution is to simply delete those old applications.
Here’s a list* of the applications that should be replaced by Snow Leopard — if you search for each using Spotlight and find more than one occurrence, open each in Finder and Get Info to find the version numbers. Then just delete the older version and update your Dock/QuickSilver index.