myHack Installer 1.0 FINAL Released

This version is now deprecated, consult the installer guide for a link to the latest version.

This release focused on further fine tuning the installer for smoother operation and enhanced functionality. You may notice that I have not added many “new features” but the existing features have greatly improved and the few new features that have been added are very useful refinements. I am considering this to be the first “Stable” release of the myHack installer and thus the beginning of the official 1.0 branch.

Note: It will take longer to run than previous versions due to a modified version of pfix 3.0 being run during post installation. This has been done to ensure absolute error-free installation. Just wait patiently and an installation succeeded message will be displayed when these scripts have completed, do not exit the installer prematurely!

Read full documentation here.

Download myHack_installer_1.0.mpkg.zip here.

Changelog:

v1.0 FINAL:

  • -Updated Chameleon 2.0 RC4 to Chameleon-2.0-RC4_PCEFI-10.5_AsereBLN_myHack-1.0 r111
  • -Updated pfix v2.6 to pfix v3.0
  • -pfix now installed to /usr/sbin/ instead of /
  • -Refined and improved pre-installation, bootloader installation, and post-installation scripts.
  • -Added function to backup any existing /Extra directory prior to installation.
  • -fdisk will now be used internally instead of overwriting the stock OS X one in /usr/sbin/
  • -Replaced IOATAFamily.kext with a different one known to have fewer problems.
  • -Added function to install tar, gzip, bzip2, rsync and nano to /usr/bin/ if target is installation device.
  • -Modified default com.apple.Boot.plist for Graphics Enabler to include a default VESA resolution.
  • -New and improved boot theme.

v1.0 RC5.2:

  • -Updated pfix v2.4 to pfix v2.6
  • -Added function to to hide /boot file.
  • -Added function to GraphicsEnabler option which will now determine the PciRoot value automatically.*
  • Bugfix: Corrected minor bug in post-install script. (Force system cache rebuild with kextcache)
  • Bugfix: Corrected minor bug in pre-install script. (Added IONetworkingFamily.kext to cleanup script)

* Automatic PciRoot discovery function will only be run when installer is targeting the root partition of a running Snow Leopard installation. If PciRoot can not be determined a default PciRoot value of 1 will be used instead.

v1.0 RC5.1:

  • -Updated pfix v2.3 to pfix v2.4
  • -Removed VoodooHDA.kext (Caused kernel panics for too many users).
  • -Removed PlatformUUID.kext (no longer required).
  • -Improved post-installation scripts to significantly reduce execution time.

v1.0 RC5:

  • -Updated PC EFI 10.5 to Chameleon 2.0 RC4
  • -Updated pfix v2.1.1 to pfix v2.3
  • -Created new “GraphicsDisabler” feature.*
  • -Added voodooHDA.kext to provide limited audio support for a variety of audio hardware.
  • -Added custom IONetworkingFamily.kext to provide support for additional networking hardware.
  • Bugfix: New IOATAFamily.kext which now works correctly on a wider variety of hardware.**
  • Bugfix: New SleepEnabler.kext which is compatible with OS X 10.6.0-10.6.3.***
  • -Replaced OpenHaltRestart.kext with EvOreboot.kext.
  • -Revised bundled kernel extensions. ****
  • -Revised “Read Me” section of installer in hopes that people will no longer make a very critical mistake.
  • -Improved boot theme to give a fresh and more visually appealing appearance.
  • -Made a significant number of alterations to internal installer coding and installation scripts.

* This function will provide true VESA functionality to virtually ALL graphics hardware, including the hardware which failed to function in VESA mode with the old Framebufferdisabler.kext.

** This new IOATAFamily.kext includes new builds of AppleIntelPIIXATA.kext, IOATABlockStorage.kext & IOATAPIProtocolTransport.kext embedded as plug-ins inside of it, they are no longer required separately. It has been compiled from 10.6.2 source and also prevents a kernel panic that was encountered previously on some hardware. IMPORTANT NOTE: We have tested this with 10.6.3 beta and determined that it DOES NOT WORK and will in fact likely cause a kernel panic. If you require this extension due to a lack of SATA+AHCI do not upgrade to 10.6.3 until a solution is discovered.

*** This SleepEnabler.kext should be compatible with future versions of OS X as well. The previous Sleepenabler.kext included with earlier versions of myHack Installer causes a kernel panic if not removed prior to booting after a 10.6.2 update.

**** Removed the following kernel extensions: AHCIPortInjector.kext, AppleUpstreamUserClientDisabler.kext, AttansicL1eEthernet.kext, FramebufferDisabler.kext, IOAHCIBlockStorageInjector.kext, JMicronATA.kext, LegacyJMB36xSATA.kext, & SKGE.kext.

Replaced the following kernel extensions with newer versions: AppleIntelPIIXATA.kext, IOATAFamily.kext, OpenHaltRestart.kext, Sleepenabler.kext.

Renamed: LegacyAppleRTC_32bit_Only.kext to LegacyAppleRTC.kext (32bit limitation is well documented I don’t think it needs to be in the name anymore).

v1.0 RC4.1:

  • -Updated PC EFI 10.4.1 to PC EFI 10.5
  • -Updated pfix v1.2 to pfix v2.1.1
  • -Made minor changes to “Read Me” section of installer for additional clarity.

v1.0 RC4:

  • -Added “Chocolate Kernel”* which allows OS X 10.6 to be run on legacy Intel, AMD** & i5 processors.
  • -myHack Installer package now copies itself to the / of an installation device automatically.
  • -Added Snow Leopard port of lspci.
  • -Added native 64bit Snow Leopard build of IOATAFamily.kext for functional PATA (IDE) support.
  • -Updated pfix v1.1 to pfix v1.2.
  • -Updated PC EFI 10.3 to PC EFI 10.4.1.
  • -Updated default com.apple.Boot.plist to use EthernetBuiltIn=y.
  • -Refined and improved install scripts & the descriptions of each individual option.
  • -Important information regarding known issues embedded into installer “Read Me” section.

* For full release notes regarding the “Chocolate Kernel” please see the Downloads page.

** This kernel will run most AMD systems but it does not include on the fly CPUID patching so if you intend to use this on an AMD system you will need to obtain a third party tool to patch your binaries.

v1.0 RC3:

  • Bugfix: PC EFI 10.3 was not properly installing over the Chameleon boot file in previous versions.
  • Bugfix: OSInstall MBR MOD would sometimes not properly install when using RC2.
  • – OSInstall MBR MOD now checks for OSInstall.mpkg on target drive and is installed automatically.
  • – Graphics Enabler option added.
  • – Consolidated and simplified core options.

v1.0 RC2:

  • Bugfix: Added permissions enabling script to post-install. Details posted on the v1.0 RC2 release page.
  • – Integrated OSInstall.mpkg & OSInstall framework into a single option.
  • – Changed openhaltrestart.kext option to selected by default.
  • – Added pfix v1.1 to installer.
  • – Improved kext descriptions.

v1.0 RC1:

Includes:

  • Chameleon 2.0 RC3.
  • PC EFI 10.3.
  • – Sample com.apple.Boot.plist for basic operation.
  • – Snow Leopard inspired myHack Chameleon boot theme.
  • – All of the kexts listed on the Downloads page.
  • – A number of bugfixes and snow leopard specific enhancements to the Chameleon installation scripts.
  • – Detailed descriptions of each custom option.

98 thoughts on “myHack Installer 1.0 FINAL Released

  1. Conti:

    Thanks for the advice. I will take a look at other edits. I still get the occasional KP and don’t know why. I suspect it is related to DSDT issues. I tried DSDTse as you suggest but could not get it to work right. It would always compile with errors. I like iasl + text editor just fine. Since I copied the enthusiast build do you have a DSDT file I could use…if nothing else for comparison to mine so I can see the sections I should be digging into?

    • mdhlgd: If dsdtse compiles with errors – THOSE ERRORS NEED TO BE CORRECTED IN YOUR SOURCE. That is one of the only advantages to using dsdtse is it’s debugging capabilities. If you need more help join the IRC channel I mentioned on the home page and see if someone will help you to edit your dsdt.

  2. Re: JG – You have to patch the ALC889a in your dsdt and add a LegacyHDA.kext to /E/E – it does not work oob.

    What LegacyHDA.kext to recommend? How to patch dsdt? Myhack used to be a single oob solution for these boards…

    • JG: I have ALC889a on my Q6600/g33m machine – myHack was NEVER an oob solution for the audio on that machine (or any machine, unless using audio that is supported by default by OS X), I always used a dsdt fix.

      The method I used on that machine is as follows:

      First I suggest you see this post on apocolipse’s blog to apply some preliminary fixes to your dsdt and add method DTGP: http://apocolipse.com/?p=9#more-9 + http://apocolipse.com/?p=14#more-14 (if you don’t need the USB fixes in this second one, still DO add the method DTGP as described in it to your dsdt, without this method the following audio patch will not work.

      Next find “Device (AZAL)” in your dsdt.dsl replace this entire section with the following code:

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

      Method (_DSM, 4, NotSerialized)
      {
      Store (Package (0x08)
      {
      “subsystem-id”,
      Buffer (0x04)
      {
      0x0A, 0x00, 0x00, 0x00
      },

      “subsytem-vendor-id”,
      Buffer (0x04)
      {
      0x6B, 0x10, 0x00, 0x00
      },

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

      “PinConfigurations”,
      Buffer (Zero) {}
      }, Local0)
      DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
      Return (Local0)
      }
      }

      Now find and replace all instances of “AZAL” with “HDEF”. Save+Compile this dsdt and place the dsdt.aml in /Extra

      Add this ALC889a.kext (it is a ‘dummy’ kext – plist only which will map the audio ports) to /Extra/Extensions , run pfix and reboot :)

  3. Conti:

    I think I figured it out…I just needed to put DSDT.aml in the /Extra folder of the OSX boot drive. I now reboot without CMOS resetting but I am hanging up after the myHack splash screen clears. I’ll do some digging on other necessary DSDT.aml fixes that might be needed other than just this one value change.

    • mdhlgd: Yes DSDT.aml must be placed into /Extra – and yes there are probably other sections that you need to edit which are causing other issues. I suggest reading some guides and using dsdtse (or iasl+texeditor if you are comfortable).

  4. Can’t seem to get it to work. It reports the unable to get AHCI device error and some EvOReboot error and it kernel panics. If I remove EvOReboot.kext and rebuild the kext cache it just hangs.

    Using Abit IP35 (P35 chipset), Q9550, GTX260. I’ve previously managed to get 10.5.x running with this system but can’t seem to even get to the installer in 10.6 no matter what method I try (self-built bootCD KPs with HPET errors even with a DSDT.aml, Empire EFI doesn’t work with the GTX260..).

  5. Conti:

    I’ve made significant progress on my new hackint0sh. I have had good success with kext mods, so I thought I’d figure out fix the CMOS (GA-EP45-UD3R) reset issue I have with each reboot. This is my first DSDT edit and there are many tools out there to try. I have tried a few without success. The tool set I like the best so far is the DSDT Patcher (by Fassl) (to extract first DSDT file) followed by iaslMe to decompile/compile. I just use a text editor to change the one RTC value (x04 to x02).

    I put the new DSDT file in the root and reboot. A couple of reboots later and it still resets. Did I miss a step? I am using Chameleon bootloader.

  6. Hello Conti,
    I have Asus P6T SE motherboard that has Intel X58 / ICH10R chipset and I have a problem when I boot Snow Leopard.It can’t “see” HDD-s on my machine.Is it because they are partitioned in Win 7 (NTFS partition) or it might be something else?
    Oh,I almoast forgot,also when I boot in chameleon it can see HDD-s,all my HDD-s are from WD.
    I used a vmware to make backup and boot disk with your myHack Installer 1.0 FINAL since I do not have access to Mac computer.
    Sorry for bugging but I would really like to try Mac OS on my computer

    • Sava: Yes, the drive you intend to install OS X on must be formatted as HFS+ to be able to install. You can format it from disk utility within the installer. Additionally ensure that your SATA devices are on the ICH10R ports on the motherboard and AHCI is enabled in your bios.

  7. conti,
    I created a EFI string with [EDIT: A HORRIBLE GUI TOOL] tool and merge the string to boot.plist. But not working.
    GPU-Z is not showing bios feature ( it shows error” BIOS READING NOT SUPPORTED IN THE DEVICE”. So cannot create .bin file.
    Any other methods like ‘changes in the info.plist of any kext’.
    Thanks
    Dinesh

    • Dinesh: That tool does not work properly – even if you did it ‘the right way’ it may not work as I said I don’t think the GT330M is even supported at this time. You should search the internet and see if you can find someone with that graphics that has found a solution because I do not have one. Sorry.

  8. Hi conti,
    Thank you very much. Now everything is working fine. But my graphics are not functioning. cannot enable QE. What is the working kext for my graphic card?
    Kindly help me. My graphic card- nVidia Geforce GT330M with CUDA technology.
    Waiting for your favorable reply
    Thanks
    Dinesh

    • Dinesh: I have no experiance with GT330M and have not seen it mentioned in any documentation to date. You may attempt to generate an EFI string for it using leopard (OS 10.5.x), or you can attempt to extract the rom file with gpu-z in windows (it will extract a bin, rename the .bin .rom and then run it through nvcapmaker in snow), then get lspci -nn the device id for the vga card then add the nvcap key and string to com.apple.boot.plist as described on the bootloader release page – however this method has not been tested with a mobile card – I’ve only seen it work on a VGA/DVI 8600GT so far – the EFI string method has a lot more documentation so that would be my first suggestion.

  9. Conti!

    Playing around with the boot priority stuff got it going! Thanks for that!
    I got to installing and booting completely, but I don’t understand how the kext stuff works, but i’ll check that out later. something else scared me, I did something wrong I guess: I rebooted, and when I did I got the error: No operating system found…
    It didn’t even boot the USB install disk! I was searching for hours, then luckily I could use my windows 7 install CD to repair the problem. Something with the partition boot table if I remember correctly.. Now I’m kinda scared to try it again, don’t really know what I did wrong.. Is there a way of installing the kexts together with the install of OSX?

    • Mutsy: To add/remove kexts just add a kext file to /E/E and run pfix each time you add or remove a kext – this has absolutely nothing to do with an oprating system not found error – that is most likely your system attempting to boot a disc or partition that does not have a bootloader installed on it.

    • JG: You have to patch the ALC889a in your dsdt and add a LegacyHDA.kext to /E/E – it does not work oob.

  10. Conti:

    PciRoot=1 fixed the problem. I am sending this post from the my new installation! Thanks so much. Now it is time to play around!

  11. Pingback: Mac OS X Snow Leopard 10.6.2 Retail. Установка.

  12. Hi Conti,
    Thanks for your support. Now every thing is working fine, but every time I have to use installer usb to boot. System is not booting through snow leopard HDD partition. I made it active, no use.
    My system having three primary partition
    1. Systemreserve (100mb) for booting files of windows 7
    2. C:drive contains windows7
    3. Snow leopard partition.
    I made partition 3 (SL partition) active, but again , it is not booting. The screen shows no error message, but just show a blinking hyphen
    Would you please help me
    Dinesh

  13. Conti:

    My graphics card is almost identical to the one you recommend in then enthusiast build. I bought the EVGA 896-P3-1257-AR GeForce GTX260 Core 216 896MB DDR3 PCI Express 2.0. The enthusiast build calls for the … 1255 … GTX260 (a bit slower I think). I get through the complete installation with video working fine. It is just the reboot to the HDD (still with Chameleon) that fails.

    • mdhlgd: Well now I am really puzzled… During installation you should be in VESA mode due to GraphicsDisabler. To boot your internal hard drive however will require GraphicsEnabler with that card. Try PciRoot=0/1 instead of the -pci0/1 flag. You are using the bootloader on the USB stick to then boot your internal drive at this point correct? If so you need to add the GraphicsEnabler and PciRoot to the boot plist on the USB Installer itself. If none of this works you will have to remove all the NV* and Geforce* kexts from /S/L/E on the target system & run pfix on it to force VESA graphics, then boot it – remove graphics enabler option, add nvenabler.kext, restore the NV* and Geforce* kexts to /S/L/E, run pfix again and reboot.

  14. Conti:

    The post I just made eliminated all of the “” symbols with (for example) “key” and “/key” or “string” and “/string” inside. My post does not look how I typed it…hopefully you can still determine what I meant…

  15. Conti,

    I build the Enthusiast system today (with only difference being EVGA 896-P3-1257-AR instead of 1255. I got through the installation just fine (had to change to AHCI in two places in BIOS). After reboot pressing a key was not detected by Chameleon until I went back to BIOS to enable legacy USB KB/Mouse support. Then I could select the HDD with the new installation. After selection, the screen changes to the iHack apple logo. I get the rotating timer (whatever you call it…looks like a lines rotating in a circle). I count about 20-25 seconds and then the screen goes blank as it would if you pull the DVI cable. I waited for a while and nothing happened.

    I reread the instructions and focused on the section regarding the GraphicsEnabler and PciRoot changes. I modified com.apple.Boot.plist on the USB drive to call out:

    GraphicsEnabler
    y

    and tried again…same failure. I kept the line above and added:

    Kernel Flags
    -pci1

    and tried again…same failure. I modified the line above to:

    Kernel Flags
    -pci0

    and tried again…same failure.

    I don’t believe I am supposed to do anything with pfix if I am just modifying com.apple.Boot.plist but I am new to this and am not sure. I am just editing the file with TextEdit. I don’t know if the order or extra carriage returns matter. Here is the complete file:

    Kernel
    mach_kernel
    Timeout
    5
    Kernel Flags
    arch=i386
    EthernetBuiltIn
    y

    GraphicsEnabler
    y

    Kernel Flags
    -pci0

    Graphics Mode
    1024x768x32

    Please let me know what you think I should try next.

    Thank you very much…

    • mdhldg: Yes I understand still.

      I need to know what graphics card you have before I can answer fully. But I suspect you may have to disable graphics on your installation to force VESA mode and then try to use another method (other than graphics enabler) to get them working.

  16. Hi Conti…,

    I do not know how to copy the file from usb disk and paste it to my installed HDD partition.
    I know, You are busy, if its like that, please tell me a site or anywhere from where I get information.
    Pls tel me the command for copy paste operation.
    Thanks
    Dr Dinesh

    • Dinesh:

      1) Boot USB Installer
      2) Open terminal
      3) Type: “cp /Volumes/YourUSBInstaller/chocolate_kernel /Volumes/YourInternalOSx86Installation/chocolate_kernel” (without the quotes) and press enter.
      4) reboot

      Very simple!

  17. Hi Conti,
    I installed snow leopard with your “my hack”. But after installation, I again boot through usb drive and select the installed partition.
    But it shows ” cannot find chocolate kernel”. Why? Actually i already checked “chocolate kernel’ when i prepared installation usb disk.
    Thanks
    Dinesh

    • Dinesh: This is because it is looking for the kernel on your target partition but it is not there yet, you will have to boot to the usb installer and use the terminal to copy the chocolate_kernel from the USB Installer volume, to your destination volume – then you will be able to boot. I am sorry I did not yet include these instructions in the guide…

  18. I was able to make a USB installer and put 10.6 on my computer, without any problems with your instructions! Thank you!

    One question, though. What wireless PCI or USB card do you recommend? I have a TP-LINK TL-WN951N that works native on iAtkos 10.5.8. But with the wireless kext, 10.6 doesn’t see it. Any suggestions?

    • Jacklwood: Consult an HCL somewhere, I don’t personally use Wifi in OSx86 so I am hesitant to give a recommendation personally…

    • Jack: There is no 10.6.2 “Retail” DVD available yet, there is a ‘restore dvd’ that ships with the p55 based iMacs, that is not the same thing… It *might* ‘work’. I have not and will not be testing it since I do not have this disk and it is not intended for use on anything other than the Mac it shipped with.