Не очень понимаю почему в первый раз «не удалось» — все довольно примитивно, за исключением некоторых нюансов, как водится.

Дано. Напомню конфигурацию: старушка GA-EP45-DS3 (звук Realtek ALC 889A , сеть 2 x Realtek 8111C), видео nVIDIA 7600GT 256 Mb, все диски и приводы SATA, Intel CoreQuad Q6600, 8Gb RAM.

Устанавливал на отдельный чистый диск (GUID HFS, конечно) с помощью загрузочного диска RebelEFI, не пропадать же добру. Процедура стандартная — грузимся с CD, меняем диск на DVD с нетронутым дистрибутивом Snow Leopard, тупим минут 20.

Первый раз загружался опять-таки с CD RebelEFI. Установил Chameleon-2.0-RC3-r658, заменил boot на аналог by netkas (PC EFI 10.5), он вроде посвежее. Подсунул свой старый DSDT.aml, без которого Snow Leopard сносит настройки BIOS после каждой загрузки.

Традиционно не работал звук. Решение проблемы для моего чипа ALC889a описано здесь, я скопирую для памяти.

Открываем свой DSDT.aml программой DSDTSE (она на лету декомпилирует aml), заменяем везде AZAL на HDEF, сам блок HDEF меняем на этот, сохраняем, кладем новый dsdt.aml в /Extra.

            Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (Package (0x02)
                    {
                        0x0D, 
                        0x05
                    })
                }

                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0A)
                        {
                            "built-in", 
                            Buffer (One)
                            {
                                0x00
                            }, 

                            "codec-id", 
                            Buffer (0x04)
                            {
                                0x89, 0x08, 0xEC, 0x10
                            }, 

                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "device-type", 
                            Buffer (0x11)
                            {
                                "ALC889a"
                            }, 

                            "PinConfigurations", 
                            Buffer (One)
                            {
                                0x00
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }

                Method (DTGP, 5, NotSerialized)
                {
                    If (LEqual (Arg0, Buffer (0x10)
                            {
                                /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, 
                                /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
                            }))
                    {
                        If (LEqual (Arg1, One))
                        {
                            If (LEqual (Arg2, Zero))
                            {
                                Store (Buffer (One)
                                    {
                                        0x03
                                    }, Arg4)
                                Return (One)
                            }

                            If (LEqual (Arg2, One))
                            {
                                Return (One)
                            }
                        }
                    }

                    Store (Buffer (One)
                        {
                            0x00
                        }, Arg4)
                    Return (Zero)
                }
            }

Помимо этого кладем в папку /Extra/Extensions файл ALC889a.kext. Что внутри — понятия не имею, но звук заработал. Старый LegacyHDA.kext выкинул, он ни к чему.

Дальше избавился от ошибки _CFGetHostUUIDString: unable to determine UUID for host. Error: 35 при помощи PlatformUUID.kext, в котором надо заменить в info.plist длинную строчку на UUID вашего стартового диска (выбрать нужный раздел в дисковой утилите и нажать кнопку Info).

Проблема с перезагрузкой решилась установкой OpenHaltRestart.kext, а вот sleep не работает. Пробовал добавить SleepEnabler.kext — не помогло.

Где-то между делом обновил систему до Mac OS 10.6.1 (устанавливал 10.6) — никаких заморочек.

mac os x 10.6.1 полет нормальный

В целом нынешняя инкарнация Mac OS на моем хакинтоше выглядит (пока) менее интеллигентно, чем прежняя (10.5.8), но это если эстетствовать. На этом пока закончил суету, надоело малость.