I have a HP 840 G3 that was donated to me to Hackintosh, currently running High Sierra 10.13.6. This should work for the 840 G2 and you may even have more luck with the 840 G1 with the WiFi that PCIe.
My method to install OS X on the SSD from a working real Mac via SSD to USB converter. I then install Clover and add my kexts ad set the config.plist
SD Card reader
Video - screen looks better in OS X then it does in Windows 10
WiFi and BlueTooth working OOO using the below hack
Battery status with Rehabman's DSDT patch
Sounds - using VoodooHDA
Microphone - cannot turn it off or mute
Keyboard backlight - controlled though BIOS anyways
touchpad - using VoodooPS2Controller
USB3 - this laptop has two on board only and I haven't test them using the docking station
Ethernet - using IntelMausiEthernet
Sleep - kind of, closing the lid doesn't go to sleep but goes to sleep over time.
This laptop does not have a Webcam - enterprise model.
Finger Print device
For me what keeps this from being a day to day usable laptop (Mac Book) is the WiFi + Bluetooth, not having battery percentage could be an issue later though.
This is a brief guide on how to create a vanilla El Capitan (also same process for Sierra) OS X Installer USB with an updated prelinked kernel containing FakeSMC.
It is tailored for those users who want to understand the “nuts and bolts” of how to create an installer and also to help brush up on their terminal skills (rather than have one made for them with the numerous automated “tools” available or even Apple’s createinstallmedia) :
Specifically, it is also a “Proof of Concept” which shows that installation is possible without even having to rely on boot loader kext injection.
Existing Yosemite installation (or Mavericks - see post#4 for steps 7,8)
“Install OS X El Capitan.app" downloaded to the Applications folder
FakeSMC.kext - Slice or Kozlek branch
Bootloader - Clover or Chameleon
8GB or larger USB drive (16GB recommended), formatted HFS+ (MBR or GUID) named “Installer”
1. Boot into Yosemite with the kext-dev-mode=1 boot flag
2. Open OS X terminal and type the following lines, followed by <Enter> after each line.
The image restore and file copying may take a while to complete, and at the end of the process, the Installer volume is renamed to “OS X Base System"....
hdiutil attach /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/SharedSupport/InstallESD.dmg
asr restore -source /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg -target /Volumes/Installer -erase -format HFS+ -noprompt -noverify
rm /Volumes/OS\ X\ Base\ System/System/Installation/Packages
cp -av /Volumes/OS\ X\ Install\ ESD/Packages /Volumes/OS\ X\ Base\ System/System/Installation
cp -av /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg /Volumes/OS\ X\ Install\ ESD/BaseSystem.chunklist /Volumes/OS\ X\ Base\ System
diskutil unmount /Volumes/OS\ X\ Install\ ESD
3. Right click on the “OS X Base System” Volume and click “Get Info”
4. Click on the lock icon and untick “Ignore ownership on this volume”
5. Extract/Copy the El Capitan Kernels folder into /System/Library/ of the USB with Pacifist. NB It is found in the "Essentials.pkg" in /System/Installation/Packages
6. Delete or Rename the original /System/Library/PrelinkedKernels/prelinkedkernel —> OG.prelinkedkernel
7. Copy FakeSMC.kext and other necessary kexts (e.g. VoodooPS2Controller.kext for laptops) into the /Library/Extensions folder of the installer USB using Finder.
8. Back in terminal, type the following lines, followed by <Enter> after each line to rebuild the prelinkedkernel…..
chmod -R 755 /Volumes/OS\ X\ Base\ System/Library/Extensions
chown -R 0:0 /Volumes/OS\ X\ Base\ System/Library/Extensions
touch /Volumes/OS\ X\ Base\ System/System/Library/Extensions
kextcache -u /Volumes/OS\ X\ Base\ System
Any errors should be noted but the output below is normal e.g.
9. Install your Bootloader targeting the OS X Base System volume
10. Boot your system with the USB without injected kexts into the OS X Installer GUI....
The original prelinked kernel in a fresh install of El Capitan will also lack FakeSMC ie it will only be linked to Apple signed kexts. In order to boot into El Capitan the first time around without boot loader kext injection, the PLK needs to be rebuilt for the El Capitan volume like we did for the installer:
1. Boot into Yosemite with the kext-dev-mode=1 boot flag
2. Delete or Rename the original /System/Library/PrelinkedKernels/prelinkedkernel for the El Capitan volume —> OG.prelinkedkernel
3. Copy FakeSMC.kext and other necessary kexts (e.g. VoodooPS2Controller.kext for laptops) into the /Library/Extensions folder of El Capitan using Finder
4. Back in terminal, type the following lines, followed by <Enter> after each line to rebuild the prelinkedkernel. In this example, the El Capitan volume is named "El_Capitan" - change if you have named it something else...
chmod -R 755 /Volumes/El_Capitan/Library/Extensions
chown -R 0:0 /Volumes/El_Capitan/Library/Extensions
kextcache -u /Volumes/El_Capitan
5. Install your Bootloader targeting the El Capitan volume. This step is only necessary if you are installing El Capitan on a new drive without existing boot loader (not required if installing on a disk with existing boot loader beside Yosemite).
6. Reboot your system without injected kexts into El Capitan!
The All-In-One Guide to Vanilla OS X for beginners
Updates for Sierra and High Sierra
Custom Prelinkedkernel Generator Tool
I have made a custom prelinkedkernel generator "PLK.tool" for Sierra + El Capitan. Instructions:
1. Download and extract the attached BaseSystem_PLK.tool.zip into your ~/Downloads folder.
2. Copy any extra kexts necessary for booting your hack to ~/Downloads/BaseSystem/ExtraKexts (e.g. FakeSMC, VoodooPS2Controller), making sure SIP is disabled.
3. Copy BaseSystem.dmg to ~/Downloads/BaseSystem
4. Open terminal and run the following commands...
chmod +x PLK.tool
---> supply your admin password ---> will place your new custom prelinkedkernel on the desktop.
macOS High Sierra bypass Firmware and MBR checks in post#13.