Top Menu


Super Budget Hackintosh Build

Update: I finally made the switch from SATA to SSD Hard Drives

OS X Yosemite

Following the success of my last Mac OS X build running on a Dell Inspiron 1525 HackBook, I’ve decided to build a super budget Hackintosh desktop for light gaming, design, and media. I originally built this system last year, and I will be continuously upgrading its hardware and software every 6 to 12 months. You can now find a lot of my original parts used/refurbished for even cheaper!

The Specs

  • CPU: Intel Pentium G840 2.8GHz Dual Core LGA1155 (Sandy Bridge), $50-$80
  • Motherboard: GIGABYTE H61M-S2-B3 (i3, i5, i7 supported), $69
  • RAM: 2x4GB (8GB) Centon DDR3-1333 (16GB max), $65-$80
  • HDD: 320GB Seagate SATA, 250GB Western Digital SATA, $90
  • Graphics: EVGA GeForce 210 1GB DDR3, $35
  • Case: Thermaltake V3 Black Edition, $35
  • Networking: Atheros AR8151 Ethernet Onboard
  • Wireless: D-Link BWA125NA USB Dongle, $35
  • Bluetooth: IOGEAR Bluetooth USB Dongle, $10
  • Keyboard: Macally White USB Slim Keyboard, $19
  • Mouse: Generic USB Mouse (don’t use PS/2)
  • Audio: VIA (Intel HDA) Realtek Onboard
* Prices are estimated.

I built this machine just to run Mac OS X. The onboard video is supported (HD3000) depending on your CPU type. The CPU I bought is on the lower end of the Intel spectrum which means I only receive HD2XXX without an actual graphics card installed; this wasn’t a big deal because I didn’t plan on using onboard graphics. You can if you’re looking to save money or have issues with your primary card. Other (newer) CPUs will receive working HD3000 for those who do not want to purchase a graphics card. It’s not amazing but it works in a pinch. Everything functions normally on the latest version of Mac OS X 10.10 (Yosemite) Developer Preview as I write this and also works in Mavericks 10.9 which I am currently dual-booting using another hard drive. My Geekbench score is between 5,400 and 5,700 on Mavericks and a little bit lower on Yosemite, however; it felt much faster running 10.10 verses 10.9, even after I restored my software: Adobe CC, Microsoft Office, and so forth. I will run some more benchmarking tests later, though since I plan on doing an upgrade soon, I am not too concerned about my current performance.

I originally installed Mavericks using a USB thumb drive (16GB Centron). It took a couple minutes because at the time I did not have anything faster than 2.0. I copied the image to my thumb drive with Disk Utility and then installed the latest version of Chameleon boot loader. For Yosemite, I migrated both Mavericks and Yosemite to Clover v2k r2692 or newer — at the time, Chameleon was not updated or tested for 10.10. It took a little getting used to but now I love it. The Developer Preview image floating around online for download is the same one released from Apple and works on both hacks and real Macs. Let’s get started!

 

Step 1: Booting The Installer

This guide assumes you already have Mac OS X downloaded. Open Finder and go to “Install Yosemite 10.10.app” and right click it. Select show package contents from the menu and from there navigate to Contents/SharedSupport and mount InstallESD.dmg.

Open Terminal and type open “/Volumes/OS X Install ESD/BaseSystem.dmg”

Open Disk Utility and restore “Base System” to the USB thumb drive (or whatever drive you’re using that is formatted MBR). After Disk Utility finishes, unmount Base System.

Navigate to System/Installation on the USB drive and delete the Packages shortcut. Go back to the OS X Install ESD that is still mounted and copy the Packages folder to System/Installation (where we deleted the shortcut). We’re replacing the shortcut with the real files.

Open Terminal and type:

cp “/Volumes/OS X Install ESD/BaseSystem.dmg” /Volumes/USB_DRIVE_NAME/ ; cp “/Volumes/OS X Install ESD/BaseSystem.chunklist” /Volumes/USB_DRIVE_NAME/

These files may be hidden from Finder, so it’s best to stick to Terminal.

Now it’s time to copy your kexts/extensions that you need to boot your system to /System/Library/Extensions/. For my current build, I needed:

  • FakeSMC.kext (Emulation)
  • NullCPUPowerManagement.kext (Replacement)
  • VoodooHDA.kext (Onboard Audio)
  • AtherosL1cEthernet.kext (Onboard Ethernet 10/100Mbit)

You can search for updated versions of these kexts, or download my kexts package here. I have included an updated version of FakeSMC.kext, along with some backup kexts and HWMonitor. When you work with kexts, be sure the permissions are correct by using chmod -R775 *.kext and chown -R root:wheel *.kext.

I recommend placing all your kexts in a “kexts” folder on the drive, so you always have them handy! Keep them safe for future updates.

If you run into error messages trying to follow these steps, there are some automated or semi-automated tools that can help you create a bootable USB installer for Yosemite. The same programs can also help you with previous versions, such as Mavericks and Mountain Lion. Google is your friend on this one.

Boot from your USB installer stick and if you have problems getting it to boot, try manually selecting the drive in your BIOS options. For me, that’s done by pressing F12 and then selecting the USB CENTRON from my boot options. Once in Clover, use your arrow keys and work your way to the options (below the hard drive icon). Set your boot args to “kext-dev-mode =1 -s -v” and then hit return. Highlight your USB installer drive and press the space bar to access another menu, then select single user mode.

Now you should be in console mode at a shell prompt. If not, double check your steps before continuing.

At the command prompt, type the following commands:

  1. fsck -fy
  2. mount -uw /
  3. chmod -R 755 /kexts/FakeSMC.kext
  4. chown -R root:wheel /kexts/FakeSMC.kext
  5. cp -R /kexts/FakeSMC.kext /System/Library/Extensions/
  6. kextcache -m /System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext /System/Library/Extensions
  7. kextload -v /System/Library/Extensions/FakeSMC.kext
  8. exit

This mounts the file system, double checks your kext permissions, copies and loads FakeSMC.kext, and exits you out of single user mode. Now the installation GUI can boot! The hard part is over with. Run the installer as normal and follow the on-screen prompts. Depending on your hard drive situation, you can open Disk Utility from the installer and re-partition your drives accordingly. Be sure to have a generous portion of drive space for Mac OS X Yosemite.

 

Step 2: Booting The Desktop

After installation is complete, reboot the system and go back into the installer — but don’t re-install anything!

Open up Terminal and type: cp -R /Volumes/Yosemite/kexts/FakeSMC.kext /System/Library/Extensions/ (we want to copy FakeSMC.kext to the bootable S/E/L directory, just like we did to get the installer running. This will allow your system to boot. You can double check the permissions if you wish (just like we did above). Now restart your system again.

Go back into Clover boot loader, back to the options section that we were in previously. Add the following boot args: kext-dev-mode=1 GraphicsEnabler=yes -v

Now you should see the welcome screen where you’re asked to fill out your information, such as creating your user account, password, and so forth. Because we don’t have the right kexts installed yet, you won’t be online. Click through the windows, selecting to connect to the net at another time. After this is finished, you should be sitting at your Mac OS X desktop! Now we need to get a few things working from here.

Step 3: Fixing Interfaces

I recommend grabbing a working computer and downloading a copy of Kext Utility or similar kext helper app to make installing kexts a little easier. You can do it manually as we have done in the past, but there are awesome tools available to make it go faster. You’ll want to place your kexts in /System/Library/Extensions/

Audio

VoodooHDA.kext (remove AppleHDA.kext)

Networking

AtherosL1cEthernet.kext

iCloud/App Store/iMessage Fix

Delete the following files after installing networking and making a successful connection to the net (to ensure it works properly). Your ethernet card will be listed as en1 — we need to change it to en0 for increased functionality with Apple’s services:

  • /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
  • /Library/Preferences/SystemConfiguration/preferences.plist

Reboot and you should now notice your ethernet has changed to en0 and iCloud, etc. will not give you strange errors when you try to log in. Go back to Disk Utility and verify/repair your permissions to ensure everything is where it should be for ownership, and you’re good to go.

Tips & The Future

There are some other boot strings I’ve used in the past to boot this system on older or different software. If you experience strange reboots or kernel panics, try these boot flags in addition to what you’re already using:

  • npci=0x3000
  • darkwake=0
  • nvda_drv=1
  • EthernetBuiltIn=yes

If you are receiving kernel panics or strange reboots, remove AppleTyMCEDriver.kext from S/L/E.

It’s best to work with and build the installer from an existing Mac — you can use virtualization (VMWare, VirtualBox, etc.) to boot any recent version of Mac OS X to start with, even if you’re coming from a Windows or Linux system.

I have a couple upgrades planned sooner than later. These include replacing my older SATA drives with SSD, and bumping the graphics up to a Gigabyte GeForce GTX 660 OC 2GB GDDR5 or better. I would also like to move from Dual Core to Quad Core with the addition of an Intel i5 or i7 processor. Currently, the CPU is shown as an i5 (Yoesmite) or i7 (Mavericks) but that is not correct — the cosmetics of the About This Mac window are easily edited and I’ve yet to do this at the time of writing this guide.

Although you have working ethernet for a wired connection, I had trouble getting this to work when I first bought the hardware, so I also purchased my USB wireless dongle. The drivers are included in my kext pack. To install, put RT2870USBWirelessDriver.kext in /System/Library/Extensions/, copy RalinkAirport to Applications, and install RalinkWirelessUtility.prefPane. Don’t forget to fix permissions and rebuild the kextcache (kextcache -m /System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext /System/Library/Extensions), then reboot.

Let me know if you have any questions, suggestions, or tips by adding a comment below.

, , , , , , , , , , , ,

9 Responses to Super Budget Hackintosh Build

  1. droid4jeff July 18, 2015 at 5:13 PM #

    Say, I hate to rain on your parade, but have you “proof-read” what you have written.???????
    Your TERMINAL Commands need plenty W_O_R_K.!!! My Friend

    • Richard Ward July 18, 2015 at 8:07 PM #

      It was written a while ago, and I’ve since started a newer guide to El Capitan (10.11) on upgraded hardware. That guide will be released as soon as it’s out of beta (maybe sooner, I’m still testing) and it’s written a lot better. This guide here I actually wrote from memory, so there may be a few things out of place, however; I’ve had many success stories come from it. In my refreshed guide I’m writing as I go and I’ll publish it soon.

  2. Bug8 October 23, 2014 at 4:24 AM #

    Thank for the guide,

    Did you ever trie to use dd to create the USB drive ? Should be more fail-safe than just copying files.

    I think you mistake the difference between mechanical harddrives and solid state ones, a SSD drive is still using SATA… You can’t say you upgraded your SATA drive to SSD (Except if you are using a PCI SSD, and even then I think PCI SSD are still using SATA in some way).

    • Richard Ward October 23, 2014 at 10:31 PM #

      You could use dd. I think at one point I did, but when I started writing I did a few things differently — still resulting in success. I’m not usually the first into writing these guides, but I try to make it something I can easily repeat from memory at a later time. You’re correct about the terms–I wrote it slightly off for SEO purposes. It was a typo on a previous article that actually scored well with some results so I continued it. The thing is you know what I mean, you have to if you’re looking up articles like this. The next build I do is going to be a lot more polished.

  3. pi September 19, 2014 at 9:14 AM #

    Thanks really good job.

    Will publish another list of components soon?

    • Richard Ward September 19, 2014 at 9:19 AM #

      Thank you!

      I am planning on building a newer, faster, and cheaper hackintosh during the holidays. These components have some upgrade room if you’re looking for something a little different. For example, you can go with an i7, more RAM, all SSDs, get a beefier graphics card, etc.

  4. sk September 8, 2014 at 1:24 PM #

    I’m new at this, and I was wondering if you could make this build without the added graphics card? and just run on the integrated graphics card? If I didn’t use for anything too heavy like adobe premier? Thanks : )

    • Richard Ward September 8, 2014 at 1:52 PM #

      If you ditch the external graphics card, you’ll need to be pulling HD3000 from the CPU/motherboard. My smaller, cheaper Pentium CPU I used would only support HD2000. If you used a different processor (research the board, BIOS versions, etc.) you can achieve HD3000 and have full support under OS X for your hack. This board came out a couple years ago (mfg. 2011), but it’s still a favorite of mine for a cheap build and has withstood the test of time under many OS X upgrades.

      If you get a supported CPU for HD3000 and still have graphics issue, double check your FakeSMC or Google up the latest version. Other than that, you should be all set!

      • sk September 10, 2014 at 4:52 PM #

        Thanks man! I really like this site, you guys should do more of these types of articles : )
        Thanks again, really means a lot

Leave a Reply

Are you real? * Time limit is exhausted. Please reload CAPTCHA.