Contribute
Register

[README] Common Problems and Workarounds on 10.14 Mojave

Sniki

Moderator
Joined
Jan 5, 2016
Messages
2,313
Motherboard
HP Elite 8300 SFF
CPU
i7-3770
Graphics
Intel HD 3000 | GTX 1650 LP
Mac
  1. MacBook Pro
Mobile Phone
  1. iOS
Common Problems and Workarounds on 10.14 Mojave

This is a thread where we collected common problems, changes, fixes and also workarounds for some problems that are present on macOS Mojave. (more sections to be added, work in progress)

This is not a troubleshooting thread !
If you have any related issue, open a separate thread on the correct forum.

Special notes for Clover Bootloader
Clover Bootloader r4515 or later is required in order to install or use macOS Mojave 10.14.0
In general i would suggest everyone to use @RehabMan builds of Clover Bootloader as they are more optimized for Laptop usage and even for Desktops.

Link to Rehabman builds of Clover Bootloader: Github or to go straight to download section of the builds: Bitbucket
For users who prefer official Clover Bootloader releases: Sourceforge
For early alpha and beta testers you can get the daily clover builds listed here: Clover daily builds


Unsupported hardware and workarounds
Apple has removed support for some older machines (laptops and desktops) on macOS Mojave.
A general list of removed support is:
- 1st gen Intel CPUs (Arrandele)
- 2nd gen Intel CPUs (Sandy Bridge)
- All Graphic cards that do not support Metal

There are some ways to install macOS Mojave even in unsupported hardware, as an example for this we will take my Lenovo B570e Laptop which is a Sandy Bridge Core i5 CPU with Intel HD3000
For this laptop i always used the MacBook Pro 8.1 SMBIOS (MacBook Pro early/mid/late 2011) which is unsupported anymore,
As i read on forums, adding the -no_compat_check boot flag into your config.plist should skip compatibility check and allow the installation to proceed, however you will still have no Graphics Acceleration QE/CI and even some App Store applications will recognize the laptop as unsupported and you won't be able to install that specific application.
So another method that i personally used is to change my SMBIOS from "MacBookPro 8.1" to "MacBookAir 5.1" which seems to work all fine and haven't noticed it affecting something like any issue due to that change. YMMV.
That should solve the installation and App Store usage but we still have no Graphics Acceleration QE/CI.
To get Graphics Acceleration QE/CI you need to get the Sierra 10.12.x
Kexts & installation steps can be found at this post: https://www.tonymacx86.com/threads/success-lenovo-b570e.255129/page-2#post-1770059

There is one issue with light theme where taskbar is greyed out but as a workaround you can use the new Dark theme.
Another possible solution for the greyed menu bar is to try "NoVPAJpeg" from vulgo: https://github.com/vulgo/NoVPAJpeg
You can download it by clicking on the releases page of his Github: https://github.com/vulgo/NoVPAJpeg/releases
It is a Lilu plugin that disables the hardware JPEG decoding feature of the AppleVPA framework that breaks Preview and Quicklook on some systems.
In our case it might fix the greyed out menu bar, haven't personally tested it, YMMV.


Audio
Apple has removed a lot of Layouts from the AppleHDA.kext on macOS Mojave.
As a result, all of you using those removed layouts on your patched AppleHDA.kext or Custom AudioInjector kext will need to switch to the available layouts which are listed in the picture below:
Layouts.png
Layout IDs that Apple removed on macOS Mojave are:
Layout1,3,8,9,11,12,13,18,22,23,24,25,26,27,28,29,30,31,32,34,36,37,38,39,41,42,43,44,45,46,47,48,49,50, etc.
So all of you using one of these removed layouts, use one from the list in the picture to get Audio working.

Currently, the best Audio solution for macOS is to use AppleALC as the list of supported Codecs is very big and in most cases you would find an existing audio patch for you codec, keep in mind that some codecs still need EAPD Codec Commander to work after wake from sleep etc.
Link to the AppleALC repository is: https://github.com/acidanthera/AppleALC
You can download it from the releases page of the Github: https://github.com/acidanthera/AppleALC/releases

Link to EAPD Codec Commander repository: https://github.com/RehabMan/EAPD-Codec-Commander
Download link: https://bitbucket.org/RehabMan/os-x-eapd-codec-commander/downloads/


Graphics
Framebuffer patching with config.plist /KernelandKextPatches/KextsToPatch on macOS Mojave is not reliable anymore.
At the same time, graphics configuration was a mess till now with many kexts, many configurations and many issues.
As a fix for that all the previously used kexts like:

- IntelGraphicsFixup.kext
- IntelGraphicsDVMTfixup.kext
- Shiki.kext
- NvidiaGraphicsFixup.kext
- CoreDisplayFixup.kext

Have been merged into WhateverGreen.kext so that way we have a Universal complete solution for Graphics.
Thanks to @headkaze we now have a complete guide to patch Graphics which i linked down below:
https://www.tonymacx86.com/threads/guide-intel-framebuffer-patching-using-whatevergreen.256490/

He also created a tool "Intel FB-Patcher" to make the entire process easier for you to patch Graphics:
https://www.tonymacx86.com/threads/release-intel-fb-patcher-v1-6-5.254559/page-33#post-1855089

Problems with Kaby Lake Graphics
There are some currently known issues with Kaby Lake graphics:
- Connecting HDMI display or TV causes the Internal Display of the laptop to have very low refresh rate "look like" and laggy cursor.
- Unplugging the HDMI display or TV will leave your internal display of the laptop stay black and you will be forced to Hard Reboot by holding power button and then to boot again.
- Shadows, Backgrounds, Blurry images and Windows will appear pixelated and ugly looking.

Thanks to @RehabMan we have a solution for this by using Skylake Spoof.
As an example for this i will take my Lenovo V330-15IKB (KabyLake R) laptop.
In normal cases i would use AAPL, ig-platform-id 0x591B0000 or 0x59160000, which used to work fine in macOS High Sierra 10.13.6, prior to 10.13.6 i also needed a patched EDID to fix the issues listed above.

Now thanks to WhateverGreen.kext this process is much easier, all we have to do is to use: lilucpu=8 kernel flag by adding it into config.plist /Boot/Arguments

Next step is to change AAPL, ig-platform-id and device-id to skylake laptop
- from 0x59160000 / 0x591B0000 to 0x1916000
Here is an example in the picture down below:
Skylake Spoof.png
Save changes to the config.plist and reboot.
Enjoy !


APFS conversion workaround
Apple has removed the options that we had to avoid APFS conversion and instead continue installation on HFS+J like:
"startosinstall" "mininstallconfig" & PlistBuddy.
Also it seems that now apfs is supported on regular harddrives and they do get converted to apfs during installation as well.

Here are some currently known alternatives:
1. Make backup with Carbon Copy Cloner (CCC) app format drive to HFS+J and restore the backup.
2. Convert the APFS partition to HFS+J with this application: https://www.paragon-software.com/home/apfs-hfs-converter/
3. Removing Harddrive/SSD and installing macOS externally with a USB to SATA cable (seems that it avoids APFS conversion).
4. Patching Installer, up to you to find this method as it's against the rules of tonymacx86


Problem Reporting
It is impossible to diagnose a problem without data that shows how your system is configured.

Also, impossible to analyze any data that you might provide without a clear understanding of your hardware. So make sure your profile is filled as per the first question in this FAQ, "Q. Where do I start?".

If you can't boot, a bare minimum is:
- Boot verbose, attach photo
- Attach EFI/Clover folder as ZIP (press F2 then F4 at main Clover screen just before collecting). Please eliminate 'themes' directory. Provide only EFI/Clover, not the entire EFI folder.

Note: Some laptops swap Fn+Fx for Fx. For those laptops, press Fn+F2 then Fn+F4. If you're not sure, press F2, then F4, then Fn+F2, then Fn+F4. You can also verify by pressing F1 (or Fn+F1) to see which one brings the menu.

If you can boot, but are having some other problem, describe the problem clearly and provide data...

Download patchmatic: https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/RehabMan-patchmatic-2015-0107.zip
Extract the 'patchmatic' binary from the ZIP. Copy it to /usr/bin, such that you have the binary at /usr/bin/patchmatic.

In terminal,
Code (Text):
Code:
if [ -d ~/Downloads/RehabMan ]; then rm -R ~/Downloads/RehabMan; fi
mkdir ~/Downloads/RehabMan
cd ~/Downloads/RehabMan
patchmatic -extract
Note: It is easier if you use copy/paste instead of typing the commands manually.

Attach contents of Downloads/RehabMan directory as ZIP.

Attach ioreg as ZIP: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html. Please, use the IORegistryExplorer v2.1 attached to the post! DO NOT reply with an ioreg from any other version of IORegistryExplorer.app.

Provide output (in Terminal):
Code (Text):
Code:
kextstat|grep -y acpiplat
kextstat|grep -y appleintelcpu
kextstat|grep -y applelpc
kextstat|grep -y applehda
ls -l /System/Library/Extensions/AppleHDA.kext/Contents/Resources/*.zml*
pmset -g assertions
pmset -g
system_profiler SPSerialATADataType|grep TRIM
Attach EFI/Clover folder as ZIP (press F2 then F4 at main Clover screen just before collecting). Please eliminate 'themes' directory. Provide only EFI/Clover, not the entire EFI folder.

Note: Some laptops swap Fn+Fx for Fx. For those laptops, press Fn+F2 then Fn+F4. If you're not sure, press F2, then F4, then Fn+F2, then Fn+F4. You can also verify by pressing F1 (or Fn+F1) to see which one brings the menu.

For 10.11 and later, attach output of (in Terminal):
Code (Text):
Code:
sudo kextcache -i /
Older versions:
Code (Text):
Code:
sudo touch /System/Library/Extensions && sudo kextcache -u /
Compress all files as ZIP. Do not use external links. Attach all files using site attachments only.


Q. Is there a script that will collect all Problem Reporting data automatically?

Yes! (almost)

User @black.dragon74 has created a script that automates most of the "Problem Reporting" tasks (as described in the previous question).

The part it cannot do is pressing F2 and F4 for you at the main Clover screen.
And of course, it only works for the case you can boot into your system. If you have a problem booting, you must obtain and collect the verbose boot photo manually (and EFI/Clover).

Full details are here:
https://www.tonymacx86.com/threads/tool-generate-proper-problem-reporting-files.235953/
 
Last edited:
@RehabMan i kept trying all day long on booting macOS Mojave Public Beta 2 and i kept failing, i checked InsanelyMac forums too but propably no one on KabyLake R tried Public Beta 2 yet or at least with 32mb dvmt.

macOS Mojave Public Beta 2 changes the MinStolenSize Patches, after two days of attempting, i thought that this should be the only issue that i failed to boot my Lenovo V330-15IKB with Intel UHD 620 Graphics.

Checked Framebuffers with HexFiend and results were positive.

So far i haven't seen someone post them so i guess i deserve the credits (checked the insanelymac forums as well just to assure i don't take credits if already someone posted them but i couldn't find anyone that posted them).

Here are the new Patches:
macOS Mojave Public Beta 2
Disable minStolenSize less or equal fStolenMemorySize assertion, 10.14 PB2 Credits (Sniki)​

KabyLake:
Name: com.apple.driver.AppleIntelKBLGraphicsFramebuffer
Find: 764648FF 05225508
Replace: EB4648FF 05225508
SkyLake:
Name: com.apple.driver.AppleIntelSKLGraphicsFramebuffer
Find: 764048FF 05F1E907
Replace: EB404FF 05F1E907
Broadwell:
Name: com.apple.driver.AppleIntelBDWGraphicsFramebuffer
Find: 764048FF 05422B06
Replace: EB4048FF 05422B06

@RehabMan as far as i analyzed the framebuffers kexts for the 3 respective Graphics platforms in hexfiend, i noticed that the code after "05" value is unnecessary since the first part of the patches that i highlighted with bold text:
KabyLake:
Name: com.apple.driver.AppleIntelKBLGraphicsFramebuffer
Find: 764648FF 05225508
Replace: EB4648FF 05225508

SkyLake:
Find: 764048FF 05F1E907
Replace: EB404FF 05F1E907

Broadwell:
Name: com.apple.driver.AppleIntelBDWGraphicsFramebuffer
Find: 764048FF 05122B06
Replace: EB4048FF 05122B06

are values that are present only in a single place on the binary files of the framebuffers, therefore the code after 05 that was present on previous betas of macOS Mojave "minstolensize" patches was/is unnecessary as & changes with betas which causes trouble to find the other patch for the other beta ,etc. so the part of the code till 05, is enough and should make a updateproof patch. (based on previous beta cycles).

So in short words, my "MinStolenSize" patches should work across all macOS Mojave Betas and so the patches are:

macOS Mojave "MinStolenSize" / DVMT-prealloc Patches


KabyLake:
Comment: Disable minStolenSize less or equal fStolenMemorySize assertion, 10.14 Credits (Sniki)
Name: com.apple.driver.AppleIntelKBLGraphicsFramebuffer
Find: 764648FF 05
Replace: EB4648FF 05

SkyLake:
Comment: Disable minStolenSize less or equal fStolenMemorySize assertion, 10.14 Credits (Sniki)
Name: com.apple.driver.AppleIntelSKLGraphicsFramebuffer
Find: 764048FF 05
Replace: EB4048FF 05

Broadwell:
Comment: Disable minStolenSize less or equal fStolenMemorySize assertion, 10.14 Credits (Sniki)
Name: com.apple.driver.AppleIntelBDWGraphicsFramebuffer
Find: 764048FF 05
Replace: EB4048FF 05

Austere.J posted the same patches, but because they captured more bytes than your shortened, they are specific to each build.

Shortening like you did causes no false-positives (currently), so seems reasonable...
 
@RehabMan first post has been updated, i tried to create a list of things that work, don't work, fixes, workarounds, etc as a temporary post for solutions of problems & to avoid the bloat of new threads with same problem (like some threads are already there with similar problems).

This hopefully should help everyone who wants to try or prepare their machines for macOS Mojave, hopefully it also lands a hand for you as well until final release is out, where you usually make your sticky threads and the [README] common problems in 10.14 Mojave for all of us.

But first let me know if you are ok with this, if by any means you don't like something about it, or the idea in general, let me know or feel free to edit, add, remove something or completely delete this thread.
 
@RehabMan first post has been updated, i tried to create a list of things that work, don't work, fixes, workarounds, etc as a temporary post for solutions of problems & to avoid the bloat of new threads with same problem (like some threads are already there with similar problems).

This hopefully should help everyone who wants to try or prepare their machines for macOS Mojave, hopefully it also lands a hand for you as well until final release is out, where you usually make your sticky threads and the [README] common problems in 10.14 Mojave for all of us.

But first let me know if you are ok with this, if by any means you don't like something about it, or the idea in general, let me know or feel free to edit, add, remove something or completely delete this thread.

I went ahead and pinned the thread to the top of this forum.
Thanks.
 
Hi, thank you guys for all your efforts. I am a Kabylake-R and if I inject 0x59160000, the boot installer looks like the screenshots below and then restarts. I can only successfully boot Mojave installer by unchecking "Inject Intel" in config.plist, but my graphics card behaves bad if I do that.
(Sorry about the bad quality, the verbose screen moved so fast.)
 

Attachments

  • IMG_20180711_210843.jpg
    IMG_20180711_210843.jpg
    5.8 MB · Views: 1,546
  • IMG_20180711_210505.jpg
    IMG_20180711_210505.jpg
    8.1 MB · Views: 1,231
  • CLOVER.zip
    1.9 MB · Views: 582
Last edited:
Hi, thank you guys for all your efforts. I am a Kabylake-R and if I inject 0x59160000, the boot installer looks like the screenshots below and then restarts. I can only successfully boot Mojave installer by unchecking "Inject Intel" in config.plist, but my graphics card behaves bad if I do that.
(Sorry about the bad quality, the verbose screen moved so fast.)

Attach full PR files using Inject/Intel=true and FakeID/IntelGFX=0x12345678 (you can set in Clover settings).
 
Attach full PR files using Inject/Intel=true and FakeID/IntelGFX=0x12345678 (you can set in Clover settings).
Thank you. I can successfully boot into the system by doing this, but the graphic behaves badly.
 

Attachments

  • Trouble Shooting .zip
    7.8 MB · Views: 610
Thank you. I can successfully boot into the system by doing this, but the graphic behaves badly.

First thing that i noticed and stopped checking:

Kexts are not installed correctly, all kexts should be installed into /Library/Extensions/
you can simply copy them into a folder lets say called "kext" on your desktop
Code:
cd desktop/kext
sudo cp -R *.kext /Library/Extensions/
sudo kextcache -i /
Restart and see if you are able to boot with correct graphics, if not boot again with 0x12345678 ig-platform-id and post new problem reporting files.
 
First thing that i noticed and stopped checking:

Kexts are not installed correctly, all kexts should be installed into /Library/Extensions/
you can simply copy them into a folder lets say called "kext" on your desktop
Code:
cd desktop/kext
sudo cp -R *.kext /Library/Extensions/
sudo kextcache -i /
Restart and see if you are able to boot with correct graphics, if not boot again with 0x12345678 ig-platform-id and post new problem reporting files.
Thanks for help. After I copy all my kexts from CLOVER/kexts/Other to /Library/Extensions/ and type "sudo kextcache -i /", the system shut down and I can't boot into system again. I have tried 0x12345678 ig-platform-id, but also failed.
Here's my CLOVER folder with preboot.log and screenshot; and since I can't get into the system, I can only provide these, sorry.
(The verbose page moved really fast, the same situation as post #14)
 

Attachments

  • CLOVER.zip
    7.3 MB · Views: 536
  • Screenshot.jpg
    Screenshot.jpg
    6.4 MB · Views: 904
Last edited:
Thanks for help. After I copy all my kexts from CLOVER/kexts/Other to /Library/Extensions/ and type "sudo kextcache -i /", the system shut down and I can't boot into system again. I have tried 0x12345678 ig-platform-id, but also failed.
Here's my CLOVER folder with preboot.log and screenshot; and since I can't get into the system, I can only provide these, sorry.
(The verbose page moved really fast, the same situation as post #14)

You should install kexts one at a time (or as groups as required depending on the kext).
Then you will know which ones you're installing that are causing problems.
 
Back
Top