I found out why, when accidentally installing Chameleon to a Mac's boot disk using the 2.0 RC1 installer, the Mac would not boot from it any more:
The installer marks the Legacy MBR's protective partition entry as
active, which is must not do (see
http://en.wikipedia.org/wiki/GUID_Partition_Table). Doing so invalidates the GPT (GUID Partition Table) format, and the Mac doesn't like this.
The fix is easy: Change the first sector's byte at offset 0x1BE from 0x80 to 0x00. This change can be performed with a sector editor such as iBored, or probably also with fdisk (dunno - please comment if you know).
And the following code in the installer scripts ("postinstall") appears to be the culprit for this damage:
# If table is GPT make the first partition active (BadAxe compatibility).
[ "${partitiontable}" = "GPT" ] && bootslice=1
if [[ "${partitiontable}" = "GPT" ]]; then
fdisk -e ${bootdisk} <<-MAKEACTIVE
print
flag ${bootslice}
write
y
quit
MAKEACTIVE
fi
I have no idea what "BadAxe" means, but this operation (making the protected partition active) clearly violates the rules for a valid Protective MBR and should therefore be removed.