Jump to content
Slice

Clover Change Explanations

128 posts in this topic

Recommended Posts

Rev 3661

 

Patches by BuildVersion:

 

Following Micky1979's idea about to be more strict/specific filtering patches by OS BuildVersion (MatchBuild) instead of OS ProductVersion (MatchOS). Since MatchBuild is an "unique" value, this will simply overwrites other unmatched BuildVersion even OS ProductVersion was matched. Applied to "KextsToPatch" & "KernelToPatch". From example below it will ignore other Sierra (10.12) BuildVersions (ex: 16A238m/16A239j) other than specified MatchBuild (16A254g):

 

 

 

<key>KextsToPatch</key>
<array>
  <dict>
    <key>Comment</key>
    <string>Zero 892 10.12 16A254g</string>
    <key>Disabled</key>
    <false/>
    <key>Find</key>
    <data>
    ihnUEQ==
    </data>
    <key>MatchBuild</key>
    <string>16A254g</string>
    <key>MatchOS</key>
    <string>10.11,10.12</string>
    <key>Name</key>
    <string>AppleHDA</string>
    <key>Replace</key>
    <data>
    AAAAAA==
    </data>
  </dict>
</array>

 

 

 

KernelToPatch:

 

With "KernelToPatch" will give Clover users the ability to patch current kernel with their own patterns onthefly. For example: to propose some "new" kernel patches after big OS update (like OS Sierra introduced yesterday) without needing to wait for Clover updates, and maybe alot of other purposes. ** This may lead Clover cannot find internal kernel patch patterns if they already replaced by your custom patterns, so use with caution (or disable from GUI if anything goes wrong). Config examples:

 

 

 

<key>KernelToPatch</key>
<array>
  <dict>
    <key>Comment</key>
    <string>startupExt</string>
    <key>Disabled</key>
    <true/>
    <key>Find</key>
    <data>
    6CUAAADrBeh+BQAA
    </data>
    <key>MatchOS</key>
    <string>10.12</string>
    <key>MatchBuild</key>
    <string>16D3x,16D3y</string>
    <key>Replace</key>
    <data>
    6CUAAACQkOh+BQAA
    </data>
  </dict>
  <dict>
    <key>Comment</key>
    <string>rootlessKext</string>
    <key>Disabled</key>
    <true/>
    <key>Find</key>
    <data>
    w0iF23RxSIsDSInf/1AoSA==
    </data>
    <key>Replace</key>
    <data>
    w0iF2+sSSIsDSInf/1AoSA==
    </data>
  </dict>
</array>

 

 

 

Sample logs:

 

 

 

3:644  0:050  GetOSVersion: 10.11.6 (15G31)
3:644  0:000  Filtering KextPatches:
3:644  0:000   - [0]: AppleHDA (XXX Sleep 2) :: BinPatch :: [OS: 10.11.6 | MatchOS: All | MatchBuild: All] ==> allowed
3:644  0:000   - [1]: AppleHDA (XXX AD1988) :: BinPatch :: [OS: 10.11.6 | MatchOS: All | MatchBuild: All] ==> allowed
3:644  0:000   - [2]: AppleHDA (XXX AD1988 , AD1984) :: BinPatch :: [OS: 10.11.6 | MatchOS: 10.11 | MatchBuild: All] ==> allowed
3:644  0:000  Filtering KernelPatches:
3:644  0:000   - [0]: startupExt :: [OS: 10.11.6 | MatchOS: 10.12 | MatchBuild: All] ==> not allowed
3:644  0:000   - [1]: startupExt 10.11 :: [OS: 10.11.6 | MatchOS: 10.11 | MatchBuild: All] ==> allowed
3:644  0:000   - [2]: rootlessKext :: [OS: 10.11.6 | MatchOS: All | MatchBuild: 15G31] ==> allowed
3:644  0:000   - [3]: rootlessKext 10.11 :: [OS: 10.11.6 | MatchOS: All | MatchBuild: All] ==> allowed

 

 

post-1101532-0-13125500-1469689420_thumb.png

Edited by cecekpawon

Share this post


Link to post
Share on other sites
Advertisement

Rev 3679

 

Experimental: Size matter, screenshot as PNG instead of BMP. Inspired by mr. Coderush "CrScreenshotDxe". Maybe useful for other PNG encoding purposes. Activate by "-D LODEPNG".

 

Rev 3681

 

Hover icons, for both 1st & 2nd row:

 

Clover will search any icons with suffix "_hover.(ext)" & use it as hovered state.
Applied to: os_*, func_*, tool_* icons. Ex: func_about_hover.png, os_mac_hover.png, tool_shell_hover.png.

 

Fixed icon format:

 

One extension for all. Ex: If user has specified an ext (Icon->Format) like "png", then Clover will ignore any other extensions including default "icns". Valid values: icns, png, bmp (untested).

<key>Theme</key>
<dict>
  <key>Badges</key>
  <dict>
    <key>Inline</key>
    <false/>
    <key>OffsetX</key>
    <integer>0</integer>
    <key>OffsetY</key>
    <integer>0</integer>
    <key>Scale</key>
    <integer>16</integer>
    <key>Show</key>
    <true/>
    <key>Swap</key>
    <false/>
  </dict>
  <key>Icon</key>
  <dict>
    <key>Format</key>
    <string>png</string>
  </dict>
</dict>

Example: based on blacktype theme by xenatt, vol icon taken from metal theme by Slice.

 

EDIT (Sat Feb 17 17:12:06 2018): Current hover icons being reverted, so it will no longer exists.

blacktype.zip

Edited by cecekpawon

Share this post


Link to post
Share on other sites

Rev 3698

Exclude ICNS and BMP graphics format.

All artist have to use only PNG graphics. In fact this is true now and I can reduce Clover size.

 

Embedded refit font is replaced now by PNG font "hellfire-9W". Is there other propositions?

Share this post


Link to post
Share on other sites

Rev 3706

Embedded font can be Black or White as set in theme.plist.

		<key>Font</key>
		<dict>
			<key>Type</key>
			<string>Black</string>
		</dict>

Share this post


Link to post
Share on other sites

Rev 3712

Built with ./ebuild.sh -D CHECK_FLAGS

 

This feature change a method for Details menu called by press Space in main menu

Screen Shot 2016-08-18 at 12.43.26.png

 

I will accept propositions for other useful boot-args to be included here:

debug

npci

-alcbeta

...

after some discussion.

Share this post


Link to post
Share on other sites

Rev 3729 by Needy

new submenu for CSR

scroll for Help
radio button for TextOnly

 

Now you can set SIP bits in additional menu in CloverGUI

Screen Shot 2016-09-12 at 14.42.15.png

 

 

Rev 3733

It was my mistake setting nvda_drv=1 flag as boot-args. No! It is NVRAM variable nvda_drv that can have a value "1".

So I make new config value

	<key>SystemParameters</key>
	<dict>
		<key>NvidiaWeb</key>
		<true/>
	</dict>

This value will switch macOS to use Nvidia WEB drivers instead of system one.

There is also GUI switch

Screen Shot 2016-09-12 at 14.46.20.png

Please test and report.

 

PS. For system

For system 10.12 (and up?) there is NVRAM variable  "nvda_drv" taking a symbolic value '1'.

Share this post


Link to post
Share on other sites

Rev 3737
We can fake our EDID to be like Apple's one.
Also changes in config.plist (old config also supported)

	<key>Graphics</key>
	<dict>
		<key>EDID</key>
		<dict>
			<key>Custom</key>
			<data>AP///////wAGECGSAAAAAAASAQOAIRV4CunVmVlTjigmUFQAAAABAQEBAQEBAQEBAQEBAQEB3iGgcFCEHzAgIFYAS88QAAAY3iGgcFCEHzAgIFYAS88QAAAAAAAA/gBXNjU3RwAxNTRXUDEKAAAA/gAjMz1IZYSq/wIBCiAgAJo=</data>
			<key>Inject</key>
			<true/>
			<key>VendorID</key>
			<string>0x1006</string>
			<key>ProductID</key>
			<string>0x9221</string>
		</dict>

See, VendorID = 0x1006 is Apple

Share this post


Link to post
Share on other sites

Rev 3744 -3748

New boot-args to choose in Details menu


CHAR16* ArgOptional[NUM_OPT] = {
  L"arch=i386",
  L"arch=x86_64",
  L"-v ",
  L"-s ",
  L"-x ",
  L"nv_disable=1",
  L"slide=0",
  L"darkwake=0",
  L"-xcpm",
  L"-gux_no_idle",
  L"-gux_nosleep",
  L"-gux_nomsi",
  L"-gux_defer_usb2",
  L"keepsyms=1",
  L"debug=0x100",
  L"kextlog=0xffff",
  L"-alcoff",
  L"-shikioff",
  L"nvda_drv=1"
};

Rev 3748

partially reverted commit 3733

 

We found that for systems up to ElCapitan 10.11.6 there was boot-args "nvda_drv=1" to switch on Nvidia WEB drivers. If absent then system drivers used.

But for Sierra there is NVRAM variable "nvda_drv" that take a value of string "1".

 

Since this revision you can check this point in Details menu and got both variable changed, for 10.x and for 10.12.

Share this post


Link to post
Share on other sites

Rev 3787

Introduce SMCHelper efi driver.

 

It is not a replacement for FakeSMC.kext, it is a helper for it.

It works as follow

1. FakeSMC (my version 3.4, I don't know if Kozlek wants to add same functionality) catches all system events like "SMC key write" and store them into NVRAM. Hardware or emulated.

2. After reboot Clover >=3787 will read NVRAM (or nvram.plist) and gather all SMC keys into own stack.

example

1:882  0:000  === [ Dump SMC keys from NVRAM ] ==========================
1:882  0:000  found AppleSMC protocol
1:886  0:003     fakesmc-key-LsBA-ui8:90 
1:886  0:000     fakesmc-key-NTOK-ui8:01 
1:886  0:000     fakesmc-key-NATi-ui16:00 00 
1:886  0:000     fakesmc-key-NATJ-ui8:00 
1:886  0:000     fakesmc-key-CLKH-{clh:00 00 70 80 00 01 19 40 
1:886  0:000     fakesmc-key-LSSS-ui16:02 00 
1:888  0:001     fakesmc-key-CLKT-ui32:00 01 3D 87 
1:889  0:000     fakesmc-key-MSDW-ui8:00 

3. When we start a system boot.efi may ask for the SMC protocol and keys

->LocateProtocol(gAppleSMCProtocolGuid, 0, 0/CB592D78) = Success

4. Those keys can be used by boot.efi for Hibernation wake or for FileVault or else.

5. I am not sure if those keys should be reported again for FakeSMC. At this moment no.

 

 

Rev 3791

Fix zero pointer dereferencing.

The bug was introduced in commit 3590  :shock: , so we have 200 non-working revisions from 3590 up to 3790.

Details

+    SelectionImages[4]->HasAlpha = TRUE;

But this image exists only with BootCampStyle else there is NULL.

So mov 1, @18h where there is legacy interrupt table.

My legacy computer worked but didn't sleep. My UEFI computer seems not affected.

I see many messages about Clover not working, black screen etc. 

I think in most cases 3791 should work again.

Share this post


Link to post
Share on other sites

Rev 3808

Added a new submenu into Clover GUI for suite related audio options.

- In this first commit can be handled boolean ResetHDA and AFGLowPowerState options

 

Rev 3847

Extends and update existing nVidia card list.

 

Rev 3848

- Extends recently created Audio tuning submenu with the ability to change the already provided

layout-id from config.plist

- The number of finded HDA Controller now are been showed with his Vendor and Device ID

- for both Audio and Graphics submenu a minus typo was correct using ternary logic

- GFX_MANUFACTERER has been renamed into HRDW_MANUFACTERER (the same manufacter struct is used for both Graphics and Audio)

Thx to Micky1979, Jolly and gengik84 for the test.

(more work is needed... the next step is move all the related HDA stuff from device_inject into a dedicated 'class', add harcoded name for the Controller and finally retrive the Codec values)

Share this post


Link to post
Share on other sites

Rev 3879
Skylake support, by goodwin_c.


	<key>CPU</key>
	<dict>
		<key>HWPEnable</key>
		<true/>
	</dict>

 
This variable switches on Intel Speed Shift technology.
Also named Hardware-Controlled Performance States

Present on MacBook9,1

Share this post


Link to post
Share on other sites

Rev 3885

Added ability to show HDA Controller name in the Clover GUI (Audio tuning subMenu)

 

HDA_CName.png

 

- harcoded names for HDA Controllers

- fixed zeroMem from previus commit (r3848)

- migrate all Audio related stuff from device_inject into dedicate 'class'

- cleanup

 

Rev 3893

Fix for commit r3885

Share this post


Link to post
Share on other sites

Rev 3895 - 3905

Strict Hibernate rule

If you set in your config plist

	<key>Boot</key>
	<dict>
		<key>StrictHibernate</key>
		<true/>
	</dict>

Then Hibernate will work other way. And this is only way to do hibernation on FileVault2 locked volume.

 

Strict Hibernation

 

Hardware

- UEFI BIOS

- hardware NVRAM

- GPT formatted HDD with EFI and Recovery partitions

 

Software

- Clover rev.3905+

- SMCHelper.efi

- OsxAptioFix2Drv.efi - there must be version 2, compatible with Hibernation

- FakeSMC.kext version 3.4.x only!

- sudo pmset -a hibernatemode 25

 

If you set StrictHibernate = TRUE while you didn't fulfil all conditions then Clover automatically switchs StrictHibernate to FALSE. So TRUE is safe settings, nothing happens in worst scenario.

If you have no Hardware NVRAM then after power on you will not see "Hibernated" and forced ordinary boot. In such cases you may look into boot.log (preboot.log, debug.log, bdmesg output) what is happen.

If you have a reboot during wake then most probably you have no correct FakeSMC.

Edited by Slice
Forgot to say about AptioFix

Share this post


Link to post
Share on other sites

Rev 3904

If you see in system log

AppleLPC::notifyPlatformASPM - registering with plugin with ASPM Support false

then you want to set in config.plist

	<key>ACPI</key>
	<dict>
		<key>DisableASPM</key>
		<true/>
	</dict>

The message will gone and macOS works smoother.

Why? This is FADT->Flags bit 4.

If set, indicates to OSPM that it must not enable OSPM ASPM control on this platform.

Yes, macOS can't control hackintosh hardware ASPM. (OSPM = OS Power Management)

 

The idea from eierfrucht

Share this post


Link to post
Share on other sites

Rev 3908

Added function

	<key>Boot</key>
	<dict>
		<key>NeverDoRecovery</key>
		<true/>

In the case when ordinary boot failed the boot.efi can set flag "recovery-boot-mode". It is not reliable for us and we want just ignore this variable to boot ordinary.

Share this post


Link to post
Share on other sites

Rev 3913-3914

USB keyboard will be reconnected automatically for FileVault2. But this affects only new American Megatrend UEFI BIOS version 5.

 

Rev 3920

MatchBuild for several builds, by Micky1979

Kext or Kernel Patches can match several builds separated by comma now.

 

Rev 3928

HDMI injection is possible now. For example by Arbitrary Properties.


Rev 3929-3937

Change Clover repository folders structure.

 

Rev 3938

correct MMIO region for Polaris cards

There was a mistake in Polaris card injection. This patch has resolved one of problems with these cards.


Rev 3950

Added a line into preboot.log

The CPU supported SSE4.1

or

The CPU not supported SSE4.1

 for you to decide is it possible to install Sierra here.


Rev 3952

New patch_for_edk2 rev 23215+ preventing load efi drivers and applications.

With this patch we can use recent EDK2 at least 23447.

EDK2 decided to prevent load applications and drivers from external sources. All modules must be loaded from FirmwareVolume.

I am not agree with this policy and canceled this check.


Rev 3940...3953

Multiple updates platform data by Sherlocks. Now Clover knows much more models.

{
  "MacBook1,1",
  "MacBook2,1",
  "MacBook3,1",
  "MacBook4,1",
  "MacBook5,1",
  "MacBook5,2",
  "MacBook6,1",
  "MacBook7,1",
  "MacBook8,1",
  "MacBook9,1",
  "MacBookPro1,1",
  "MacBookPro2,1",
  "MacBookPro2,2",
  "MacBookPro3,1",
  "MacBookPro4,1",
  "MacBookPro5,1",
  "MacBookPro5,3",
  "MacBookPro5,5",
  "MacBookPro6,1",
  "MacBookPro6,2",
  "MacBookPro7,1",
  "MacBookPro8,1",
  "MacBookPro8,2",
  "MacBookPro8,3",
  "MacBookPro9,1",
  "MacBookPro9,2",
  "MacBookPro10,1",
  "MacBookPro10,2",
  "MacBookPro11,1",
  "MacBookPro11,2",
  "MacBookPro11,3",
  "MacBookPro11,5",
  "MacBookPro12,1",
  "MacBookPro13,1",
  "MacBookPro13,2",
  "MacBookPro13,3",
  "MacBookAir1,1",
  "MacBookAir2,1",
  "MacBookAir3,1",
  "MacBookAir4,1",
  "MacBookAir4,2",
  "MacBookAir5,1",
  "MacBookAir5,2",
  "MacBookAir6,1",
  "MacBookAir6,2",
  "MacBookAir7,1",
  "MacBookAir7,2",
  "Macmini1,1",
  "Macmini2,1",
  "Macmini3,1",
  "Macmini4,1",
  "Macmini5,1",
  "Macmini6,1",
  "Macmini6,2",
  "Macmini7,1",
  "iMac4,1",
  "iMac5,1",
  "iMac6,1",
  "iMac7,1",
  "iMac8,1",
  "iMac9,1",
  "iMac10,1",
  "iMac11,1",
  "iMac11,2",
  "iMac11,3",
  "iMac12,1",
  "iMac12,2",
  "iMac13,1",
  "iMac13,2",
  "iMac14,1",
  "iMac14,2",
  "iMac14,3",
  "iMac14,4",
  "iMac15,1",
  "iMac16,1",
  "iMac16,2",
  "iMac17,1",
  "MacPro1,1",
  "MacPro2,1",
  "MacPro3,1",
  "MacPro4,1",
  "MacPro5,1",
  "MacPro6,1",
};

Share this post


Link to post
Share on other sites

Rev 3979

Menu for custom kexts patches.

It looks like follow

Screen Shot 2017-01-23 at 13.10.28.png

 

But you should take into account that the menu is called before OS choosen so it can't reflect MatchOS and MatchBuild.

The menu will reflect all patches defined in config.plist as if OS matched. You may enable or disable any of these patches.

When you start an OS then there will be additional check for all enabled patches if OS matched. If not matched then the patch will be disabled no matter of menu settings.

 

PS. Please reduce your comments in kexts patches. They used for menu!

 

Rev 3980

Same for kernel patches.


Rev 3981

This update by ErmaC    #1654  

Share this post


Link to post
Share on other sites

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By fagner_sbs
      Hello! Sorry for the way of writing in English, I'm using google translator.
      I am several days trying to make my Mojave hakintosh work perfectly. However, I have reached a point where I can no longer proceed without help.
      Almost all hardawares were installed and recognized (using the clover). However, still have a panic kernel (capture attached). Every time, when connecting the MAC it restarts 2 or 3 times to be able to show the dekstop and to function normal. I also think that having problem with video graphics sometimes freezes the entire display system if video appears on a web page.
      I've attached a file with used files: clover, bios capture, complete hardware information, error capture(https://1drv.ms/u/s!AvhW45_HBY8zgfsySZPWZ-SZXFiMfA). Can someone help me?
       
      Notebook:
      Mobile DualCore Intel Core i7-3537U, 2000 MHz (20 x 100), 4 threads
      Asus K46CB Series Notebook
      Intel Panther Point HM76, Intel Ivy Bridge-MB
      16269 MB  (DDR3 SDRAM)
      BIOS AMI (05/17/2013)
      Vídeo:
      Intel(R) HD Graphics 4000                         10.18.10.4358
      NVIDIA GeForce GT 740M                            25.21.14.1634
    • By MikixIT
      Salve ragazzi, io ho un pc con sopra Windows e Sierra(che ho installato grazie a questo fantastico forum)
      Recenetemte ho avuto problemi con gli aggiornamenti windows 10(Che uso urgentemente per lavoro)
      E girando per i forum di Windows, ho capito che il problema era dato da un "interferenza" di clover di quando windows faceva i soliti riavvi quando aggiorna.
       
      Io volevo chiedere se era possibile selezionare MOMENTANAMENTE Windows come avvio primario e quindi non su clover, una sorta di bypassare clover
      e quindi il pc avvia o riavvia e va subito ad avviare windows senza passare da clover, in modo da fare aggiornare Windows e poi "RIATTIVARE" Clover esattamente come prima
      Esiste un modo di fare ciò senza perdere clover o dati etc? 
      Grazie se risponderete, buona serata ragazzi!
    • By cvad
      Small tool to download, compile and build the latest Clover X64 package.
       
       
       

      The script inside is editable.

       
      Enjoy...
       
      Many thanks to the comrade SunKi for help with creating the script.
       
       
       
       
       
      Best thanks - click "Rate File".
       
    • By fusion71au
      Run Vanilla OS X El Capitan, Sierra, High Sierra or Mojave in VirtualBox 5.x.x on a Windows Host
      Following on from my previous guide on how to create a VMware virtual machine running Vanilla OS X El Capitan in Windows, I’ve decided to write a similar guide for creating a VirtualBox El Capitan VM. 
       
      The virtual machine should be useful for testing El Capitan and also for creating installers for use on a real machine/hackintosh.
       
      There are other tutorials and videos on the net about running OS X on Windows machines using pre-made VMDK disk images but you can never guarantee what else is in there….
       
      I’ve gathered info for this guide from several threads in the Multibooting and Virtualisation section of this forum and also the wider internet eg
       
      @colt2 HOW TO: Create a bootable El Capitan ISO for VMware
      @dsmccombs comment on faking Ivybridge Processor
      @E:V:A http://forum.xda-developers.com/showpost.php?p=55572430&postcount=6
      @Tech Reviews video tutorial https://www.youtube.com/watch?v=t7X07U63lwg.
      VirtualBox Forum: Status of OSX on OSX
       
      Requirements
         Intel PC with four or more CPU cores running Windows 7 X64 or later OS (2 or more cores needed for OS X)    4GB or more RAM (2GB or more will be needed for OS X)    Hard Disk with at least 40GB free for Virtual Machine    Oracle VM VirtualBox v 5.0.34    Install OS X El Capitan app and Mac or Hack to prepare installation iso <-- Now, no longer necessary to have previous access to a Mac or Hack by building the Installer.app from scratch - see post#75    16GB or larger exFAT formatted USB stick to transfer El Capitan iso from Mac/Hack to Host PC  
      Prepare Installation ISO on your Mac or Hack
      1.  On your Mac or Hack, download "Install OS X El Capitan.app" from the App Store into your Applications folder.
      2.  Download and unzip the CECI.tool (attached to this post) into your ~/Downloads folder. The commands in this executable script are shown below for informational purposes.  Note: you will need approx 16GB of free space on your hard disk for the script to complete.
       
       
       
      3.  Open OS X terminal, then run the following commands to execute the script:
      cd downloads chmod +x CECI.tool ./CECI.tool 4.  At the end of the process, you will have an El Capitan iso on your desktop - copy this onto an exFAT formatted USB for use on the PC Host later.
       
       
      Create an El Capitan Virtual Machine in VirtualBox
      1.  Open the VirtualBox program and click the "New" button to create a new VM.
       

       
      2.  Select Mac OS X and Mac OS X 10.11 El Capitan (64 -bit) for Operating System type and version.  I named my Virtual Machine "El_Capitan", then clicked next...
       

       
      3.  Leave the Memory size at the recommended 2048 MB, then click next.
       

       
      4.  Choose to "Create a virtual hard disk now", then click the create button.
       

       
      5.  For the hard disk file type, the default is VDI (VirtualBox Disk Image) but I have selected VMDK for inter-operability with VMWare.  Click next...
       

       
      6.  For Storage on physical hard disk, I have chosen the default Dynamically allocated (grows larger to a set limit as you need more disk space).
       

       
      7.  On the File location and size screen, you can set the location of the new virtual hard disk and its size - I recommend changing disk size to 40GB or larger.  When you click the create button, you will now see your new VM in the VirtualBox main GUI.
       

       
      8.  Click the settings button on the Main Menu to tweak a few settings....
         a.  On the System/Motherboard tab in Boot Order, you can uncheck the Floppy Drive (who has these now?)
       

       
         b.  On the System/Processor tab, you can increase the allocated CPU cores to 2
       

       
         c.  On the Display tab, you can increase the allocated Video Memory to 128MB
       

       
         d.  On the Storage tab, click on the icon of the Optical Drive and select "Choose Virtual Optical Disk File". 
       

       
      Navigate and select the El Capitan ISO we created earlier...
       

       
         e.  Click the OK button to finalise the VM settings.
       
       
      Patch El Capitan vbox configuration file with DMI Settings from a Mac
      1.  From the start menu, type cmd and click run as administrator to open an administrative command prompt. 
       

       
      2.  Choose a Mac Model similar to your host system, then type the following lines, followed by <enter>  after each line.  Make sure you first close all VirtualBox Windows and the VirtualBox program, otherwise any changes you make won't stick...
       
      Eg iMac11,3
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-F2238BAE" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1 MacBookPro11,3
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "MacBookPro11,3" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-2BD1B31983FE1663" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1 Macmini6,2
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "Macmini6,2" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-F65AE981FFA204ED" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1 3.  Optional- For some host systems eg those with Haswell and newer CPUs, you might have to spoof an older CPU to avoid VirtualBox errors.  You can try from one of the following if this happens:

      To spoof Lynnfield i5 750 CPU
      VBoxManage.exe modifyvm "El_Capitan" --cpuidset 00000001 000106e5 06100800 0098e3fd bfebfbff To spoof IvyBridge CPU
      VBoxManage.exe modifyvm "El_Capitan" --cpuidset 00000001 000306a9 04100800 7fbae3ff bfebfbff or
      VBoxManage.exe modifyvm "El_Capitan" --cpuidset 00000001 000306a9 00020800 80000201 178bfbff 4.  Close the command prompt window.
       
       
      Installation of El Capitan
      We are now ready to start the El_Capitan Virtual Machine....
       



       
      Installation should be relatively straight forward, just following the prompts of the OS X installer:
      1.  Select language, agree to legal terms
       

       
      2.  Use Disk Utility from the Utilities Menu to erase and format the virtual hard drive as a single partition GUID Mac OS X Extended.  I named my drive "Macintosh HD" but you can enter whatever you like eg El_Capitan.
       

       
      3.  Quit DU and choose Macintosh HD to install El Capitan on.
      4.  After 20-30 min (depending on how fast your system is), the installation will complete.  At this point, unmount the El Capitan ISO by clicking the Devices menu from the VM window, click Optical Drives, then choose Remove disk from virtual drive.  The VM is now ready to reboot into OS X from the virtual hard drive.
      5.  At the welcome screen, choose your country and keyboard layout.  You can skip transfer information, location services and logging in with your Apple ID if you wish…
      6.  Create a User Account and select your Time Zone.  You can skip sending diagnostics and usage data to Apple….
      7.  Finally, you will arrive at the El Capitan Desktop.
       

       
      8.  Network/internet and audio should work OOB but on my system, the sounds were distorted.  Unfortunately, there is no QE/CI and the VM resolution will be fixed without the ability to dynamically resize the VM window (no VirtualBox additions for OS X guests atm). 
       
       
      Customization with VBoxManage
      1.  You can change the default resolution of 1024*768 (after shutting down the VM) with the VBoxManage command from the Windows Administrative Command Prompt:
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" VBoxInternal2/EfiGopMode N (Where N can be one of 0,1,2,3,4,5) referring to the 640x480, 800x600, 1024x768, 1280x1024, 1440x900, 1920x1200 screen resolution respectively.
       
      Update:  For VirtualBox 5.2.x, the command for changing screen resolution has changed...
       
      VBoxManage setextradata "<MyVM>" VBoxInternal2/EfiGraphicsResolution XxY (where X=Horizontal screen resolution, Y=Vertical screen resolution)
      eg
      VBoxManage setextradata "<MyVM>" VBoxInternal2/EfiGraphicsResolution 1280x1024 2.  Adding serials and other SMBIOS details for the System Information Screen
      VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemSerial" "W8#######B6" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardSerial" "W8#########1A" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVendor" "Apple Inc." VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemFamily" "iMac" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBIOSVersion" "IM112.0057.03B" A listing of known issues with Mac OS X guests can be found in the VirtualBox Manual - link https://www.virtualbox.org/manual/ch14.html.
       
      Vanilla Mavericks and Yosemite, Snow Leopard from Retail DVD
      The same VM settings for El Capitan will also boot and run vanilla installations of OS X Mavericks and Yosemite .  Attached to this post are installer scripts to create bootable Mavericks (CMI.tool) and Yosemite (CYI.tool) ISOs for VirtualBox and VMware.
       
      With the respective OS X installer apps in the Applications folder, download and run the installer tools using terminal ie
       
      To create a Mavericks ISO on your desktop
      cd downloads chmod +x CMI.tool ./CMI.tool To create a Yosemite ISO on your desktop
      cd downloads chmod +x CYI.tool ./CYI.tool Here is a screenshot of the VM running Mavericks 10.9.5...
       

       
      Finally, those without a Mac/Hack to prepare the install media can purchase a retail Snow Leopard DVD directly from Apple and install OSX 10.6.3 on their virtual machines (Snow Leopard, Lion and Mountain Lion run quite happily in VirtualBox with 1 CPU, 1-2 GB of RAM and the rest of the settings unchanged from above).  Once you update by combo update to SL 10.6.8, you can directly download El Capitan from the App Store for free .
       

       
      UPDATE macOS Sierra 10.12 to 10.12.6: For macOS Sierra, use CSI.tool in post#51.
      UPDATE macOS High Sierra 17A365:  For macOS High Sierra, use CHSI.tool in post#73.
      UPDATE macOS Mojave 18A391:  For macOS Mojave or High Sierra, use macOS_iso_creator.tool on page 4 of thread.
       
      Good luck and enjoy
      CECI.tool.zip
      CYI.tool.zip
      CMI.tool.zip
    • By Masha24
      Hi guys, I've been lurking in the shadows for months trying to learn how to hackintosh this laptop.  Perhaps if anyone has the time, I could use some help getting it to install 
       
      Trying to install High Sierra on this Laptop:
       
      Lenovo Ideapad 110-171KB-80VK (2017)
      Intel Core i5 7200U
      Intel HD 620 Graphics
      Resolution: 1600x900
       
      Elan PS2 Track Pad - [ACPI\VEN_ETD&DEV_0675 - system device -PCI\VEN_8086&DEV_9D23&SUBSYS_383117AA&REV_21]
      Realtek Network    - [PCI\VEN_10EC&DEV_8136&SUBSYS_383317AA&REV_07]
      Realtech audio
       
      SATA Controller    - [PCI\VEN_8086&DEV_9D03&SUBSYS_382F17AA&REV_21]
      USB 3.0 XHC        - [PCI\VEN_808
       
      --- Using Clover *
      --- I'll attach it below.
       
      I can't quite get it to install, and i've been going in circles for months now ...
      I'll attach everything I have so far including, verbose pics, clover preboot, Clover folder, etc.
       
      Here are some photos of the verbose text leading up to the installer, if maybe there is something useful in here?
       

       
       
       
      And now photos of the installer
       
       
       

       
       

       
       
      Above is an image of the Installer log, (the main pop up window loads from about 10 mins and stops arbitrarily at 2 minutes left, every time) of the nearly hundred attempts i have made, this is the final screen i get, pretty much no matter what i do.
      Sometimes the the order of what it says is different , but the main things of interest are:
       
      "Target is not convertible to APFS: This volume is not formatted as Mac OS Extended journaled."
      "Warning: Couldn't find Board ID, Chip ID, & ECID in new namespace, falling back"
      "Unable to get fs for null"
      " NO native mechanism to verify Applediagnostics.chunklist"
      " NO native mechanism to verify Installfa.plist"
      " NO native mechanism to verify Basesystem.dmg"
      " NO native mechanism to verify AppleDiagnostics.dmg"
      " NO native mechanism to verify InstallESD.dmg"
      " NO native mechanism to verify Basesystem.chumklist"
       
      I have tried many many ... many .. different combinations of kexts, drivers, copies of clover, forks of clover - different copies of drivers and kexts from different sources.. including from all the official repositories.
       
      * I am not trying to install with APFS - the drive i am using is a spinning HDD - so i don't understand the first line quote above.
      * I am using a usb2 slot - there is only two on this machine - 1- usb2 and 1- usb3
      * As you'll see in the Clover folder i'm using APFSdriverloader. - so the installer should detect the installer-APFS-thing - and see it should be HFS+ ?? no?
       
      I'll detail the procedures:
       
      I wiped the Target HDD drive with a live linux USB.
      i prepair the USB with Createinstallmedia method, install clover to the EFI on usb, load kexts and drivers (I've been recently attempting with the Plist from a 'certain other site' Ton*****86) As it has the dvmt preallocation patch and other bits - i'm of course open to ANY other files/pLists .. this is just the one i've been experimenting with lately.)
      Add ' -v ' in clover options to see the verbose output
      in the installer (acts sketchy sorta, delayed and sluggish) i use DiskUtility to erase the drive 'Macos extended journaled'
      Make initial selections, agree to license and begin install.
      it proceeds to 2 minutes left every time, and hangs. many times i've left it for hours, and even overnight.
      I'm honestly not kidding, it's nearly 100 times ive' tried this, i've downloaded high sierra from the app store 5 times to rule out that, i've used countless combinations of everything .. i'm almost completely burned out.
       
       
      If anyone can shed some light i'll be VERY thankful!... I'm ready to go in a completely new direction...please please please help
       
      I'll put the Clover in the next post because i ran out of space in this one......
       
       
       
       
       
       
       
      Here is the latest clover i've been using, with the preboot, and DSDT/SSDT (F2 & F4) in it.
       
      CLOVER-Oct15.zip
       
      Thank you very much for ANY help you can provide
×