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.
Prerequisites
Existing Yosemite installation (or Mavericks - see post#4 for steps 7,8)
“Install OS X El Capitan.app" downloaded to the Applications folder
Pacifist
FakeSMC.kext - Slice or Kozlek branch
Bootloader - Clover or Chameleon
8GB or larger USB drive (16GB recommended), formatted HFS+ (MBR or GUID) named “Installer”
Procedure
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"....
sudo -s
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
exit
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…..
sudo -s
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
exit
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....
Post Install
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...
sudo -s
chmod -R 755 /Volumes/El_Capitan/Library/Extensions
chown -R 0:0 /Volumes/El_Capitan/Library/Extensions
touch /Volumes/El_Capitan/System/Library/Extensions
kextcache -u /Volumes/El_Capitan
exit
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!
Other links
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...
cd ~/Downloads/BaseSystem
chmod +x PLK.tool
./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.
BaseSystem_PLK.tool_ElCap.zip
BaseSystem_PLK.tool_Sierra.zip
BaseSystem_PLK.tool_Mojave.zip (need to run in Mojave to avoid dependency errors)
BaseSystem_PLK.tool_Catalina.zip
Dell laptops and desktop can be monitored by SMM methods as mentioned is the old topic
I made a plugin SMIMonitor for FakeSMC in 2014 but it was 32bits and was not working. Only now I made it to be 64bits (as darkvoid did with kozleks branch) and got positive results
and after heating
So I have monitoring of 4 additional temperature sensors (CPU Proximity, GPU, DIMM, and Motherboard) and a CPU fan which initially stay at 0 rpm and start rotating after heating with 2882rpm.
Moreover I implemented a function for brave people to control fans
sudo SMC_util3 -kF0As -w2
The last digit 2 is a FAN speed you want to set
0 = Off
1 = Low
2 = High
If you have more then 1 fan then you can manage other one by choosing next key F1As, F2As etc.
Precaution! Writing the fan speed is dangerous and may cause a computer damage. Do this at your own risk!
Note. SMIMonitor.kext will work only with FakeSMC v3 provided with HWSensors3 in my signature.
Official release at sf.net contains SMIMonitor without write possibility.
I have installed Hackintosh on to my System, but the CPU cooler is obviously louder then on Windows.
I am using right now VirtualSMC.kext, but since FakeSMC provides temperature measurement tools, and VirtualSMC not, I asked my self if that might be a hint for my loud cooler?
My question, has somebody tried maybe both and even compared them? And is FakeSMC maybe less noisy?
Is it enough to just mount EFI partition, and delete the VirtualSMC.kext and put instead FakeSMC.kexts ? Without any fancy kext installation tool or terminal commands, just replace files and restart in enough?
My System:
Mainboard: Gigabyte Aorus Z390 Ultra
CPU: Intel i9 9900k
CPU Cooler: BeQuiet! Dark Rock 4
GPU: Vega 64
Ram: 2x16GB Corsair 3200
SSD: 1TB Adata M.2
The Tutorial i have used - https://github.com/cmer/gigabyte-z390-aorus-master-hackintosh/blob/master/STEP_BY_STEP.md
Really works like a charm besides, the more noisy cooler, which i bought because it is extra quietly.
I asked first at tonymac's forum, but they deleted the post because I haven't used their tool, really disgustig.. I really hope to never use their tools, and I hope here the information freedom is more respected.
#f. tonyhoremacs
HWSensor Features
Control temperature of Intel and AMD CPU
Control temperature of AMD, Intel and NVidia cards
Control temperature of motherboard
Control FANS
Control Voltages
Control HDD/SSD state (SATA & NVMe) with S.M.A.R.T. monitoring
Control frequencies
Laptop Battery Monitoring
Different applications support
High Sierra compatible
Installation to /S/L/E or in the ESP (Clover only)
Supported languages:
English (base), Russian, Italian, Korean and semplified Chinese
Source code: at https://sourceforge.net/p/hwsensors/hwsensors3/code3/HEAD/tree/
Bugs report at https://sourceforge.net/p/hwsensors/hwsensors3/tickets/
Topic for discussion at: https://www.insanelymac.com/forum/topic/299861-hwsensors3/
Chief Developer @Slice, new HWMonitorSMC2.app and package by @vector sigma