How I built my first Hackintosh?

lulu

How I built my first Hackintosh?

It started once on Lifehacker, with reading something around self-build PCs, called Hackintosh, which are running the operating system of Apple. Now, when I wanted to upgrade my old box, I went back, read it again, and decided to my build a hackintosh. So I'm going to install the Yosemite version of Mac OS X on a self-build hardware, as described on tonymacx86.com.

What is Hackintosh

Hackintosh are computers built to run Mac OS X operating system of Apple on non-Apple personal computers with x86 architecture and x86-64 compatible processors. So you buy the hardware components, mount them together, and intall OSX on it. An Apple at half price, with some hacking and providing own support when problem comes.

The hardware

I picked up a CustoMac mATX of December 2014, with these particular components:

Actually, I bought 2 HDDs, since I wanted to have RAID1, so additionally a 5,25" - 3,5" mounting kit, and an extra SATA cable was also needed.

You will need a monitor with either a DVI or with an HDMI cable, OSX won't work with VGA.

Preparation

I won't cover all the details how to order and mount the items (use the links to webshops provided by tonymacx86). I'll focus on install of the OS, and the required steps for preparation. My guide was this.

Install media on USB

First, I prepared the install media: a rather big (8-16 GB) USB drive is needed, and an Apple computer to create a boot-able USB drive. If you don't have any, you can ask a friend to help, or setup a virtual machine with OSX. This will result in an all-in-one bootable USB drive, can also be used as a rescue boot drive for system recovery.

Start with downloading the OSX Yosemite image to the Apple computer. If it's downloaded, do not continue the setup process! Since the download will take a while, in meantime the boot-able USB can be prepared.

Put the USB drive into the Apple computer, partition it with Disk Utility, to get one partition, in Mac OS Extended (Journaled) format, and having a Master Boot Record.

Now download Unibeast, and run it to create the install (and rescue) USB drive from the local copy of the OSX Yosemite image. Start his once the download of OSX image is finished. Select your USB in Unibeast, then Yosemite, but no legacy support, no laptop support, and start to install to the USB.

And take your time. And drink a coffee. And read the manuals. And take again time, read again the manuals and forums, focusing on Unibeast caveats, and drink an other coffee. And ... So it's a long process, without any proper progress indicator to know whether the install process is running or not. It's showing "Copying Files" only. It was more than 30 minutes on a Macbook Air 2013, and unless you have an high-end Apple, it won't be within 10-15 minutes as stated in the manual. Chances are also high, that you will repeat these steps. But once it will be ready, for sure, be patient.

Than finally download and copy to the USB Multibeast for Yosemite, the post-install software as well.

Now you have a boot-able USB drive with Yosemite.

BIOS setting

This is of course depending on the motherboard, for my Gigabyte I landed at this description. To enter the BIOS settings on a Gigabyte motherboard, press the delete key when your computer boots (before the operating system starts). Click on the "Advanced" section (or F2), if you want to get a more standard-looking settings page.

This Gigabyte motherboard with the recommended CustoMac desktop, will function using UniBeast/MultiBeast with only a few changes from its Optimized Defaults.

First, reset your settings to their optimized defaults by pressing the "F7" key. Then go through and change only these setting, which are the only deviations from optimized defaults we need for this configuration:

  • M.I.T
    • Advanced Frequency Settings
      • Advanced CPU Core Features:. Intel Turbo Boost Technology: Disabled
    • Advanced Memory Settings
      • set Extreme Memory Profile (X.M.P. Memory Profile) to Profile1
  • BIOS features:
    • Change "Boot Option #1" to your USB drive, and after you finish installing Mac OS X, you should change this setting back to default, so that the SSD disk is the first boot option.
    • Set VT-d to disabled
  • Periferals:
    • Set the Initial Display Output to IGFX, instead of PCI.

Finally, press F10 to save the changes.

The install process

Now put USB into your new box, turn on the computer, press F12 to choose the new boot device (your USB), and start the install process!

At the Chimera Boot Screen, choose USB OSX, and simply start to type on welcome screen the following boot parameters: -v maxmem=4096.

I've seen lot's of other instructions, like -v PCIRootUID=1 IGPEnabler=Yes GraphicsEnabler=No maxmem=4096 -no-zp, but I did not need those.

  • -v bypasses the Apple boot screen and enter verbose startup mode
  • maxmem=4096 helped to overcome the deadbeef error.

Then wait, and read the logs on the screen. Once it ready, you should select the primary language.

Do not forget to erase and format the destination drive (the SSD) with Disk Utility, choose 1 partition with GUID Partition Method, type a name (i.e. "OS Yosemite", you can rename it later), and choose Mac OS Extended (Journaled) format.

When finished, close Disk Utility, choose your SSD "OS Yosemite" as install target, and hit Continue to start OSX install.

You can follow the progress if you open the log window.

Even if the installation is complete, the drive isn't boot-able yet. Restart the system, press F12 to get the boot menu, and boot again from the USB. At the Chimera Boot Screen, now choose your new Yosemite installation, and now the post-install activities can be started.

Post-Installation Using MultiBeast

Once booted, we complete OS X Yosemite setup, as usual in OSX: select region, and lot's of other OSX staff. When finished, open the MultiBeast application.

MultiBeast is an all-in-one post-installation tool designed to enable boot from hard drive, and install support for Audio, Network, and Graphics. In addition it includes System Utilities to repair permissions and a collection of drivers and config files.

First, choose QuickStart with DSDT-Free.

Click through Drivers for Audio, Graphics, and Network options, and Customize for further options. See some readings here.

My changes modifying the DSDT-Free defaults are these:

  • Drivers

    • Audio
      • Realtek ALCxxx: ALC892 (neither ALC898 nor ALC1150, since this motherboard has the 892 codec)
    • Disk
      • Intel GENERIC AHCI SATA
      • TRIM Enabler 10.10.3 TRIM Patch
    • Misc
      • EvOreboot (for shutdown and reboot)
      • FakeSMC: mandatory
      • Plugins: allow access to motherboard hardware monitors
      • HW monitor app
      • I've not set the USB 3.0 Universal, since I read somewhere that 9-series motherboards shouldn't use the Generic USB 3.0 driver, but I'm having USB 3.0 freezes, so I'm not sure in that. Comments are welcome to correct this!
    • Network: RealtekRTL8111 v1.2.3
  • Customize

    • Boot Options
      • 1080p Display mode
      • Basic Boot Options (add minimum required boot options, )
      • no Generate CPU States (uncheck for 9 series, important for 9-series motherboards with Haswell refreshed processors; prevents freezes)
      • Hibernate Mode - Desktop
      • Kext Dev Mode (disable the kext signing security settings, you should be careful to only install system drivers from sources that you trust.)
      • User KernelCache (default in DSDT free)
    • System Definitions: iMac 14,2 (forum suggests iMac14,1 - HD4600 only)
    • Themes: tonymacx86 Black

Save to back up your configuration, and click Build then Install.

When the install process is ready, remove the USB and restart computer to complete installation.

Optimizations

We have now a fully updated version of OS X Yosemite on your CustoMac! If you get stuck (and you will!), there are many users with similar hardware in the tonymacx86 Forum to provide support.

Things such as HDMI audio may not work automatically and universally.

Special thanks to everyone in the community for testing!