
Hackintosh: deploy macOS Sierra on Intel-PC in detail and clearly
- From the sandbox
- Tutorial
LET ME PLEASE
1. All files are uploaded to MEGA. Who is experiencing problems with her is uploaded to the torrent in the comments.
2. Please do not ask me about installing Mac on laptops. I ask you to. You are welcome. This is a very hemorrhoid process. Install yourself a ubuntu and connect the Mac theme. You will receive the same experiment
3. I rarely answer on a habr, write to VK for all questions.
If you CAN’t unzip the files to a USB flash drive, please move away from the keyboard and urgently read the book “Computer for Dummies: a detailed guide on how to use a PC” !!!
1. All files are uploaded to MEGA. Who is experiencing problems with her is uploaded to the torrent in the comments.
2. Please do not ask me about installing Mac on laptops. I ask you to. You are welcome. This is a very hemorrhoid process. Install yourself a ubuntu and connect the Mac theme. You will receive the same experiment
3. I rarely answer on a habr, write to VK for all questions.
This manual / guide / etc is written for those who are too lazy to collect pieces of this or that information about installing the "poppy" on the PC, everything is clear and on the shelves.
To begin with, before actually installing the system on a PC, you need to decide whether we need it or not, since the system itself is very specific in terms of installation and configuration, unless of course you have an apple device. There is no point in explaining that deploying a system that was not originally planned for desktop PCs is a complicated matter and you can kill everything from 2 to N hours, depending on the compatibility of the hardware.
Now, let's figure out what Hackintosh is: the word “hackintosh” was formed from the merger of the two words “Macintosh” and “Hack”, which essentially means “hacked mac”, although there is nothing to do with “hacking”.
In this guide, we will consider creating an installation USB flash drive from under Windows (since this is the most popular system among "novice hackintosh"), installing the system on a blank disk, expanding the kernel for your hardware, and, in fact, installing and configuring the bootloader (at this point and many have problems)
Author's car:
CPU: Intel Core i5 4460 3.2 GHz (Haswell)
Memory: 16 GB Crucial Ballistix Sport
Graphics: MSI GeForce GTX 760 2048MB
Motherboard: Gigabyte GA-H81-S2V (UEFI Bios)
Memory: 16 GB Crucial Ballistix Sport
Graphics: MSI GeForce GTX 760 2048MB
Motherboard: Gigabyte GA-H81-S2V (UEFI Bios)
ACHTUNG
The author DOES NOT GUARANTEE the operability of the system at the same level as his. The system works on different machines in different ways and there is no need to reproach the author for the “crooked instruction”
I also want to note that in this article we are working with NVidia graphics cards and the UEFI BIOS.
Well, let's go.
Step 1. Evaluation and analysis of iron
Yes, despite the fact that the Hackintosh somehow runs on almost any configuration, it always does this in different ways. Therefore, it is immediately worth analyzing our iron.
Processors
So, let's start with the fact that the system WILL NOT work on machines on AMD processors (the near-death state of agony in which it will arrive is very difficult to call “work”). Yes, in fact, you can put a custom kernel, reflash it, and so on, but it makes sense to reinvent the wheel out of sticks, if somehow it breaks anyway. The system rises without problems on Intel processors, starting with Core i3 (we are talking specifically about macOS Sierra 10.12, previous releases can also appear on Core 2 Duo and Pentium processors). In my case, the i5 4460 stone fell (4 cores, 4 threads, turbo boost up to 3.4 GHz).
ACHTUNG 2
There are problems on socket processors 2011-3, in particular on the X99 chipset. Usually manifested due to too large bells and whistles of the motherboard.
Video cards
Next, we determine the graphics. If you use the integrated Intel graphics (in my case it’s the HD4600), then most likely you will need a separate “factory” of graphics (although they can start natively).
Supported Intel Graphics Cores
Intel HD 3000
Intel HD 4000
Intel HD 4600 (laptops)
Intel HD 5000
Intel HD 4000
Intel HD 4600 (laptops)
Intel HD 5000
Radeons (AMD) start up, but again with a bang. For example, new cards (RX-4 **), as well as the well-known R9 380 or R9 380x, can simply display the download in a black screen.
AMD Exactly Supported List
Radeon HD 4000 series
Radeon HD 5000 series
Radeon HD 6000 series (preferably 6600 and 6800)
Radeon HD 7000 series (preferably 7700, 7800, and 7900)
Radeon R9 200 series (R9 290 will not start)
Radeon R9 300 series (With R9 380 can I haven’t checked, but judging by the reviews on Reddit there are problems with these cards )
Radeon HD 5000 series
Radeon HD 6000 series (preferably 6600 and 6800)
Radeon HD 7000 series (preferably 7700, 7800, and 7900)
Radeon R9 200 series (R9 290 will not start)
Radeon R9 300 series (With R9 380 can I haven’t checked, but judging by the reviews on Reddit there are problems with these cards )
In this manual, we will not consider the AMD graphics factory, since all this comes down to framebuffer patches and Device ID changes in the bootloader (which is individual for each). Read more about AMD cards here: tyk (English).
The situation is completely different with cards from NVidia. Almost everything is started, with the exception of some very gifted ones.
NVidia Work Card List
Geforce 7000 series
Geforce 8000 series
Geforce 9000 series
Geforce 200 series
Geforce 400 series
Geforce 500 series
Geforce 600 series
Geforce 700 series
Geforce 900 series
UPD 14.05 Geforce GTX 1000 Series
Geforce 8000 series
Geforce 9000 series
Geforce 200 series
Geforce 400 series
Geforce 500 series
Geforce 600 series
Geforce 700 series
Geforce 900 series
UPD 14.05 Geforce GTX 1000 Series
More than sure that you will find your card in the list.
Network Controller
I think you don’t need to chew how you can determine your network card ...
Newby Guide
Open the Task Manager → the “performance” tab → Ethernet (Windows 10), there will be a network connection in big black letters.

By the way, you can still see in BIOS'e

By the way, you can still see in BIOS'e
One way or another, we will not dwell on this in detail. In any case, you will have to start the network card, so just provide a list of supported network cards.
Network cards
5 Series - 82578LM / 82578LC / 82578DM / 82578DC
6 and 7 Series - 82579LM / 82579V
8 and 9 Series - I217LM / I217V / I218LM / I218V / I218LM2 / I218V2 / I218LM3
RTL8111, 8168, 8101E, 8102E, 8131E, 8169, 8110SC, 8169SC
RTL8111 / 8168 B / C / D / E / F / G
RTL8101E / 8102E / 8102E / 8103E / 8103E / 8103E / 8401E / 8105E / 8402 / 8106E / 8106EUS
RTL8105 / 8111E / 8111F / 8136 / 8168E / 8168F
AR8121, 8113, 8114, 8131, 8151, 8161, 8171, 8132,8151, 8152, 8162, 8172
AR816x, AR817x are supported
BCM5722, 5752, 5754, 5754M, 5755, 5755M, 5761, 5761e, 57780, 57781, 57785,5784M, 5787, 5787M, 5906, 5906M, 57788, 5784M
88E8035, 88E8036, 88E8038, 88E8039, 88E8056, 88E8001
E2200
Intel gigabit
5 Series - 82578LM / 82578LC / 82578DM / 82578DC
6 and 7 Series - 82579LM / 82579V
8 and 9 Series - I217LM / I217V / I218LM / I218V / I218LM2 / I218V2 / I218LM3
Realtek
RTL8111, 8168, 8101E, 8102E, 8131E, 8169, 8110SC, 8169SC
RTL8111 / 8168 B / C / D / E / F / G
RTL8101E / 8102E / 8102E / 8103E / 8103E / 8103E / 8401E / 8105E / 8402 / 8106E / 8106EUS
RTL8105 / 8111E / 8111F / 8136 / 8168E / 8168F
Atheros
AR8121, 8113, 8114, 8131, 8151, 8161, 8171, 8132,8151, 8152, 8162, 8172
AR816x, AR817x are supported
Broadcom
BCM5722, 5752, 5754, 5754M, 5755, 5755M, 5761, 5761e, 57780, 57781, 57785,5784M, 5787, 5787M, 5906, 5906M, 57788, 5784M
Marvell
88E8035, 88E8036, 88E8038, 88E8039, 88E8056, 88E8001
Killer
E2200
Memory
There are no restrictions. The system runs on two gigabytes. Recommended 4. The author recommends 8.
With iron, in fact, sorted out. If at this stage you do not change your mind, move on.
Step 2. Make a bootable USB flash drive and deploy the installer to it
So, here we come to practice. Let me remind you that we are doing all this from under Windows. I must say right away that we will not use images from the rutracker, which
A flash drive> 8 GB is required. Any.
Download: tyk
1. Run the utility
2. Destination disk → select our USB flash drive
3. Format disk
Now we wait. The flash drive will be formatted in Apple HFS and will be divided into two sections, one of which will have the bootloader installed (CLOVER), and the second will remain clean so that the installer can be deployed there.
After the completed manipulations we get approximately the following picture:

Next, you need to deploy the installer to the second section. We also do this through the BDU utility. However, the question is where to get the image. There are two options: to take a ready-made one that has already been unpacked, or to personally get it from Install Mac OS Sierra.app from the AppStore. Since the second method requires a lot of time, and look for this .app itself for a very long time, we will use the first. Craftsmen have already prepared ready-made HFS files for this utility, and extracted them from .app for us. All we need is to download it (the image weighs almost 5 gigs, so you can just put it on download). Actually, download macOS 10.12 Sierra from here .
Downloaded.
1. We get from the archive HFS Partition File (HFS +), a file with the extension .hfs .
2. In the BDU "Destination disk" utility window, select Part 2 of our broken flash drive.
3. Open the "Restore partiton".
4. We search and select our * .hfs file. Please note that it must be no larger than PART 2 section .
5. We are waiting for its unpacking.
Everything, the installer on the flash drive is unpacked and ready to work.
Now we need some files for your system. I have collected all the necessary in this archive. I will explain later what and why.
→ Download
Also you need this kekst, we also download it: tyk . Unpack the folder from the archive to the root of the section with Clover, and the kext into the folder that we unpacked. All is ready. The flash drive is done. Move on.
Step 3. Install macOS Sierra on Intel-PC
We check that the flash drive is inserted in the 2.0 port. Reboot, go to the BIOS. Let me remind you that our BIOS is UEFI. Disable virtualization (Intel Virtualization). In the boot priority (BOOT), we indicate our flash drive. Make sure that it will be loaded in UEFI mode. We save and apply the settings, reboot. We get into the Clover menu.
Clover ("Clover") - the bootloader of the hackintosh, as well as its installer.
Press the down arrow until we get to the Options menu. Press Enter. All we need here is this line: We

write the following into it:
kext-dev-mode=1 rootless=0 -v npci=0x2000 nv_disable=1
I will explain what each of these arguments does:
kext-dev-mode=1
- the necessary arg, without which the hack will not start. Allows you to download kexts into the system (Initially, FakeSMC.kext).rootless=0
- disables SIP (System Integrity Protection). Necessary arg.-v
- "Verbose mode". Instead of a beautiful apple, we will see a “console” download, so that you can identify the error, if any.npci=0x2000
(or 0x3000, depending on the version of PCI-e) - optional. We warn you that the download stops during the PCI scan. You can not prescribe.nv_disable=1
- optional. To avoid artifacts during loading and other garbage, turn off the graphical shell. We are loaded in the native graphics mode in the Orthodox 144p resolution. You can not prescribe.
Apply the arguments by pressing Enter. Select Boot Mac OS Sierra from OS X Base System. And so, the birthmark went. Immediately we will analyze some errors: still waiting for root device - the IDE controller does not have time to connect.
Fix
We reconnect the USB flash drive to another 2.0 port, we boot with the following arguments:
kext-dev-mode=1 rootless=0 cpus=1 npci=0x2000 -v UseKernelCache=No
Missing Bluetooth controller transport - the video card did not turn on, or FakeSMC.kext did not catch. Verify that the kexts / other folder contains FakeSMC.kext. Sinezub has nothing to do with it.
Fix
We load like this:
Or like this:
kext-dev-mode=1 rootless=0 -v npci=0x2000
Or like this:
kext-dev-mode=1 rootless=0 -v -x npci=0x2000
If such errors still remain, then try loading like this:
kext-dev-mode=1 rootless=0 -v npci=0x3000 darkwake=0 nv_disable=1 cpus=1
In other cases, only Google will help, although these fixes should solve these problems.
We wait. At some points it can freeze. If it freezes for more than a minute - reboot. Should help in some cases.
And here we are, in fact, in the installer. Choose a language and click on the arrow. Downloading the language pack will go (it may freeze for a minute). Now open Utilities> Disk Utility, we need to format the disk for macOS. Select the desired disk, click "Erase". For convenience, we call the new disc "Macintosh HD". Format, close the disk utility. Next, select the disk on which we will install the system (in our case, Macintosh HD), install.
Installation takes from 15 to 30 minutes, it all depends on the speed of writing to disk. After installation, the system will prompt us to configure the Internet connection - skip it, we will do it later. We make the user. Done, we are in the system. Rather, in its stump. So far, nothing is working for us. If you reboot the machine, then it will be impossible to get into the system (due to the lack of a bootloader).
Fix
If the computer still rebooted or went down, you can choose to boot from the USB flash drive, then select “Boot macOS Sierra from Macintosh HD” in the clover menu, without forgetting to write boot arguments in the options menu.
Move on…
Step 4. Basic system setup and installation of kexts
So here we are in the system. As long as she knows little, we won’t go online, the graphics do not work, and indeed everything looks somehow very bad. This needs to be fixed.
Let’s figure out what keksts is.
Kext (Kernel Extension) - kernel extensions that run this or that equipment that is incompatible with the original poppy (For example, where in the aimak we find a network card from Realtek or a sound card?). Here we will need them now.
First, we need the PostInstall folder, which you unpacked into the CLOVER section on the bootable USB flash drive. From there, we need, first of all, the Kext Utility utility, which allows you to install kexts in the system. We start it, enter the password from the user, wait until we see the inscription “All done”.

We install the text on the network card (Network folder, there I sorted it into folders for each network card), just drag it into the program window. We wait until the inscription "All done" appears. Next, go to the CLOVER section of our flash drive, then to kexts, then to Other. We copy FakeSMC.kext from there to any place (Better in the same PostInstall), then in the same way as the text on the network card, install it. You will also need kext on USB 3.0. It was in the Legacy_13.2_EHC1.kext.zip archive that you unzipped in PostInstall. Install it.
Done, we got the Internet, USB, and allowed the system to boot at all (FakeSMC.kext imitates the System Management Control chip, which is present only on Apple motherboards. Without this kekst, the system simply won’t start).
Now install the bootloader. Go to the PostInstall folder → Clover_v2.3k_r3949. There is a * .pkg file, open it.

We click continue, we read about the bootloader (I'm lying, also click continue). Next, in the lower left corner, click "Configure".
For the UEFI download, set the following settings:

We'll talk about legacy loading later, since everything is a little more complicated there and you will have to patch DSDT.
Click "Install." Let's go through the bootloader installation process.
Done, the bootloader is installed.
Step 5. Configuring the bootloader
After installation, we get a clean, unconfigured Clover bootloader, which needs to be slightly configured. We open Clover Configurator (in the future I do not advise using this program for point-editing the bootloader config).
First, we need to get to the EFI section with the bootloader. In the left menu, click Mount EFI. Next, click Check partition, a table of all partitions appears. The partition we need should be located on the same partition as Apple_HFS, it displays as EFI EFI. Click Mount partition. In the list, select the drive we need (for example, disk0s1). Please note that there is a bug when all sections are not visible. Turn the mouse wheel so you can scroll between sections and select the one you need.
Next, click Open Partition. It will open the “folder” with the desired section. Go to EFI> CLOVER. Copy plist.config to the PostInstall folder, for convenience. Also, just in case, copy it somewhere else, since the one we just copied will be edited. And one more for backup. Copy, open plist.config.
We see something like the following:

ACPI - Do not touch the fixes, drop (DropOEM) our video card (DropOEM_DSM works when two DSDT patches are encountered. Therefore, we leave the original autopatch method as a bootloader, and disable ours if it appears).
Go to the BOOT section.

So, here we should dig. We set the arguments ourselves, depending on the system.
-v (verbose)
- The already familiar "text" download mode. It is better not to include it, but to prescribe manually if necessary.arch
- architecture. In my case, x86_64npci
is the key we already know. Expose if necessary. I recommend doing the first boot without it, but in Verbose mode.darkwake
- is responsible for sleep mode and hibernation. It has 7 modes. If the dream does not start changing the hibernatemode in the terminal, then I recommend using trial and error to find the necessary darkwake mode.cpus=1
- launch using only one core. I do not recommend choosing.nvda_drv=1
- activation of the Nvidia web driver, which we will install a little later. Choose if you have nVidia.nv_disable=1
- Disabling invisibility graphics and launching on the native poppy driver. It is better not to choose, but if necessary, manually prescribe.kext-dev-mode=1
androotless=0
already explained earlier.
Go to the right subsection.
Default Boot Volume
- the section from which, by default, the selection of the drive to start will begin. By default, LastBootedVolume (last selected section).Legacy
- Legacy Boot for older versions of Windows and Linux. It very much depends on the hardware and construction of the BIOS, so several algorithms were developed:LegacyBiosDefault
- for those UEFI BIOSes where the LegacyBios protocol is available.PBRTest, PBR
- PBR Boot options, it's just overkill. In my case, PBR works.XMPDetection=YES
Is an important parameter. It fixes the number of RAM, slots, dice, frequency and number of channels.DefaultLoader
- if there are several loaders on the section, select default. Should not be empty!Timeout
- time to automatic boot.Fast
- a parameter that skips the choice of the partition and immediately proceeds to download.-1 (Timeout -1)
- shutdown the bus.
We skip the CPU section, the loader will pick up the necessary values. Devices are also better off if you have nothing to fake. Disable Drivers - Disabling unnecessary drivers at boot time. GUI - customize the appearance of the bootloader. I think nothing needs to be explained here, there are no special parameters here. Screen resolution, language and menu theme. Everything is simple. Graphics - customization and graphics injections.
Do not touch the Inject NVidia parameter! There will be artifacts at launch. It is designed to run old cards of the GT
Kernel and Kext Patches line - patches and kernel customization. By default, Apple RTC is selected. Better not to touch. SMBIOS - the most juice, customization and fake "poppy".

To set up factory information, click on the magic wand icon. Next, select iMac (if PC) or MacBook (if laptop).
ACHTUNG 3
You can also see among older configs, such as MacMini, or Mac Pro. Your task is to choose the most similar poppy to your iron.
Do not add anything to Memory and Slots. These are purely cosmetic parameters that the clover picks up at the boot stage. Incorrectly set parameters can cause conflicts.
WARNING: Nvidia graphics cards without policy-kext corrections work only on iMac13.1 and iMac14.2 poppy models.
In AppleGraphicsControl.kext / Contents / PlugIns / AppleGraphicsDevicePolicy.kext / Contents / info.plist we fix Config1 to none here:

Now it should work.
Done. We don’t touch anything anymore, we made the basic settings. We save our file. Now copy it to the CLOVER folder of the EFI section, log in, replace. Let me remind you that before that you had to backup.
Step 6. Installing the graphics driver and first rebooting
We are almost there. Now it remains only to start the video card. In the PostInstall folder is the WebDriver * .pkg package. Open it, install. Next, he suggests we reboot. Reboot.
Now make sure that we are not loading from the USB flash drive, but from the hard drive in UEFI mode . Select Boot macOS Sierra from Macintosh HD. We are starting.
Note
I recommend using the -v switch for the first run, so that if something goes wrong, you can immediately identify the error. If the bootloader crashes and you cannot get into the system, then boot from the USB flash drive, specify the necessary keys in the options and load the system in Verbose mode.
Done, here we are in the system. In the picture, I roughly showed how the axis will look after all the settings. Pay attention to how the system understood your “poppy”, as well as the processor frequency.

A sure sign of the Nvidia driver will be its logo on the taskbar. I turned it off, by the way, since it interferes, but you can access the invisibility control panel through the "System Settings ...". We can check the Internet through Safari. USB 3.0 banally sticking a USB flash drive into the 3.0 port.
Additionally
- sound
With regards to sound, things are different. If you have an external sound card, then just download the drivers for it from the manufacturer’s website (analog devices, such as mixing consoles, do not require drivers and start immediately). For the built-in sound card, use one of these kexts:
VoodoHDA . Craftsmen washed down the instructions for setting it up. I will not copy it, but just give a link to the archive .
PS The author recommends moving the text with your hands, however, all this can be done through Kext Utility.
AppleHDA
With regards to AppleHDA
The following conditions must be met for it to work:
- The presence of vanilla (pure) AppleHDA.kext kekst in the system.
- The presence of the HDEF section in your DSDT (or fix clover FixHDA_8000-> True)
- Specify layout in DSDT (or in the clover config.plist Devices-> Audio-> Inject-> 1,2,28 ... etc. Choose from those that are registered for your codec above)
- Remove ALL patches for sound (if there were any in your config.plist) from the KextsToPatch section
- Remove DummyHDA.kext (if used)
- If you used VoodooHDA.kext - delete. Also remove AppleHDADisabler.kext and rebuild the cache.
- Intel HDMI 4000/4600 requires clover fix UseIntelHDMI-> True
That's all, actually. Then we get the macOS Sierra ready to go.
UPD from 05/14/2017
- In the comments, good people uploaded the file from mega to torrent. This is due to the fact that many have a problem when downloading a file from mega. Frankly, I did not know that Mega has a download speed limit (I use a premium account). Also, please write all questions to me in VK, but first check the comments. There is a chance that your problem has already been solved there. Again, I am not responsible for any risk that may be inflicted on your computer. Also, I want to stipulate one point that the article is presented solely for educational purposes. The fact of installing a hackintosh on a PC is a gross violation of Apple’s policy regarding their system, which is punishable by law. The author does not encourage the use of MacOS on non-Apple computers and does not encourage changing the source code of the system.
- the end