Various people have asked about the Installer bug under Mac OS 10.2 and 10.3 where the Installer won't allow installation to any volume and specifies this reason: You cannot install this software on this volume. (null)
The problem appears to be tied to either the "Allows Back Rev" flag or the "Root Volume Only" flag. I was never able to figure out which, and due to the requirements of my package, changing either was unacceptable anyway.
Deleting the older package receipt manually before installing always fixes the problem. Here is an InstallationCheck script that will do just that, and allow your installations on 10.2 and 10.3 to proceed normally. It is compatible with 10.1 as well (if you know the dark secret to creating a usable 10.1 package). It is also compatible with 10.4.
#!/bin/sh
# Check for the existence of any of our receipts and Darwin 7 or less. If present, # remove the previous receipts so that the (null) bug in the Installer prior to 10.4 # won't trigger. Set kReceiptPrefix to the longest common start of the receipt names # available. kReceiptPrefix="MyWickedCoolApp" if [ -d "/Library/Receipts/$kReceiptPrefix"* ]; then version=`sysctl -n kern.osrelease` major=`echo $version | sed -e 's/\..*$//'` if [ $major -lt 8 ]; then rm -rf "/Library/Receipts/$kReceiptPrefix"* fi fi
exit 0
This is definitely not what an InstallationCheck script is for but it has been a good work-around for me, for this problem.
Chris
|