Jump to content
jackluke

Mojave "light mode" hybrid transparency "patch" WORKING (with proof pictures)

22 posts in this topic

Recommended Posts

Those who use Mojave with an OpenGL (non-Metal) Video Card in "dark mode" have noticed that global transparencies are working fine, while in "light mode" encountered the "grey" Finder menu bar and sidebars issues, this patch is intended for those who want to use Mojave mainly in "light mode" saving some transparencies around, so here is my "hybrid reduce transparency" patch.

 

It is totally safe, harmless and reversible, it has been deeply tested and will 100% work until restart or logout, even after sleep lock screen it will still work.
To return with normal "transparency" you can also do that from Accessibility prefpane disabling the "reduce transparency" checkbox.
To use this patch just double click on this attached shell "mojavehld.command" and it will launch through Terminal.


[METHOD 1: Enable hybrid transparency]
After launch the mojavehld.command just follow these steps:
type 1
type 4

close Terminal (CMD+Q) and any other app previously opened.

(The choice number 3 is not mandatory)

[METHOD 2: Force hybrid transparency]
If for some reason after that you will still get Dock and Notification Center without "transparencies" then relaunch the mojavehld.command:
type 2
type 1
type 4

close Terminal (CMD+Q) and any other app previously opened.

 

Download attached here: mojavehld.zip

 

desert finder menu.png

desert notification bar.png

color finder menu.png

color notification.png

color finder dock.png

Edited by jackluke

Share this post


Link to post
Share on other sites
Advertisement

Hmm... ok, so all in all, all that your script does is apply the good old command that disables/enables transparency:

defaults write com.apple.universalaccess reduceTransparency -bool [true|false]

What's new? the partial restart of macOS functionalities?

Edited by Hervé

Share this post


Link to post
Share on other sites

Mine has a totally different purpose, is needed to fix the "grey" Finder menu bar on unsupported Metal GPUs for Mojave "light mode", it enables a "partial transparency reduction" while that link you posted is an applescript for "global transparency reduction".

 

And my "patch" doesn't require any "sudo" or "System Events" permissions.

 

The "new" is that you will have an opaque Finder menu while keeping all other elements like Dock, Notification Center and some other transparencies.

 

This is needed for Mojave "non-Metal" GPUs with only OpenGL rendering, as a workaround for the "light mode".

Edited by jackluke

Share this post


Link to post
Share on other sites

H,

Firstly thanks for all your effort to get Mohave goin on non metal older graphics.

 

 

But does not change anything here, screen shot attached .

But I lost trackpad control after applying this patch.

Restored back default and trackpad works again.

 

Regards

macq

 

 

Screenshot 2018-09-18 at 6.26.28 PM.png

Share this post


Link to post
Share on other sites

The default write com.apple.universalaccess reduceTransparency -boot [true|false] command just does what it's always done.

 

What leads to claim there is "hybrid transparency" is that, after executing the command to disable transparency, the script only restarts Finder and Spotlight, not the Dock or anything else. However, after a reboot, transparency is completely disabled, as anyone would expect, i.e. white Finder bar, dark Dock, etc.. So the "hybrid transparency" is only effective for as long as you run the script from a system with transparency enabled and you do not reboot.

 

You need to restore default transparency settings before a reboot or shutdown if you want to enjoy the results of that script again (i.e. you need to either run the script and select option 2, or enter the default write command to set reduction to false or use the Accessibility->Display PrefPane to untick Reduce transparency parameter). All in all, it's nice for a few times but probably rapidly quite annoying to do in the long run.

 

Example on non-Metal HD3000 system in light mode...

* with default transparency:

Default_transparency.thumb.png.87c8f80cc62a00275f8751c907df1462.png

 

* without transparency:

No_transparency.thumb.png.a2f2d85ecb1867c5419601a2726d03ad.png

 

* after executing the script under default transparency mode:

After_script.thumb.png.65407238bdb2b7e4cce879d3f6cdff00.png

 

* after rebooting the system without restoring default transparency settings:

No_transparency.thumb.png.a2f2d85ecb1867c5419601a2726d03ad.png

 

So, yes, the trick with Finder brings a nicer look but you have to restore default settings to avoid total loss of transparency on reboot. This would need to be refined through an automated process at boot and restart/shutdown to be properly usable.

 

Edited by Hervé

Share this post


Link to post
Share on other sites
4 hours ago, Hervé said:

No, it just does what it's always done. You just got the impression it does something else on non-Metal graphics but all it does is disable transparency like it does on any other systems.

 

Example on Metal-HD4000 system...

with transparency:With_transparency.png.675f9fcbcbfdefe6b65373ef8c6c91ed.png

 

without transparency:

 

Without_transparency.png

 

Of course HD4000 is Metal supported, you should instead try that on HD3000 that is OpenGL only (non-Metal), or any Legacy Nvidia Tesla or ATI with QE/CI.

 

Please try that on an HD3000 and you'll notice what I meant.

 

Anyway you evidenced the less important thing into your screenshot, my patch is working fine.

 

If you get offended because I called it "patch", call as you want, but I can assure that this little script does its own duty as workaround for Mojave "light mode".

You can't find a better solution till now to keep transparent Dock and at the same time a clear white opaque Finder menu bar in "light mode".

 

4 hours ago, macq said:

H,

Firstly thanks for all your effort to get Mohave goin on non metal older graphics.

 

 

But does not change anything here, screen shot attached .

But I lost trackpad control after applying this patch.

Restored back default and trackpad works again.

 

Regards

macq

 

 

Screenshot 2018-09-18 at 6.26.28 PM.png

 

Which GPU do you have ?

 

Try again these steps, launch the Terminal mojavehld.command then type followed by "enter key": 2, 1, 4

 

Probably when you lost the trackpad, if in the "meanwhile" you used an USB mouse you could notice that script was perfectly working.

Edited by jackluke

Share this post


Link to post
Share on other sites
17 minutes ago, jackluke said:

 

Which GPU do you have ?

 

Try again these steps, launch the Terminal mojavehld.command then type followed by "enter key": 2, 1, 4

Hi,

 

Mine is Nvidia gt 320m.

Specs in sig.

 

Edit, with this setting loose the transparency of the dock now, but trackpad working.

Screen shot attached.

 

Screenshot 2018-09-18 at 6.58.21 PM.png

Edited by macq

Share this post


Link to post
Share on other sites
45 minutes ago, macq said:

Hi,

 

Mine is Nvidia gt 320m.

Specs in sig.

 

Ok that's a legacy Nvidia Tesla so it works, but unluckily in your case probably there is conflict with your internal "trackpad", try with an USB mouse to notice that "hybrid transparency" is working.

 

45 minutes ago, macq said:

Edit, with this setting loose the transparency of the dock now, but trackpad working.

Screen shot attached.

 

Ok then go through "System Preferences - Accessibility prefpane - Display"

de-select the "reduce transparency" checkbox

Then relaunch my script and type 1, close Terminal, now it should give Dock and Notification Center transparencies and fix the greyed Finder menu.

Edited by jackluke

Share this post


Link to post
Share on other sites
20 hours ago, Hervé said:

The default write com.apple.universalaccess reduceTransparency -boot [true|false] command just does what it's always done.

 

What leads to claim there is "hybrid transparency" is that, after executing the command to disable transparency, the script only restarts Finder and Spotlight, not the Dock or anything else. However, after a reboot, transparency is completely disabled, as anyone would expect, i.e. white Finder bar, dark Dock, etc.. So the "hybrid transparency" is only effective for as long as you run the script from a system with transparency enabled and you do not reboot.

 

You need to restore default transparency settings before a reboot or shutdown if you want to enjoy the results of that script again (i.e. you need to either run the script and select option 2, or enter the default write command to set reduction to false or use the Accessibility->Display PrefPane to untick Reduce transparency parameter). All in all, it's nice for a few times but probably rapidly quite annoying to do in the long run.

 

Example on non-Metal HD3000 system in light mode...

* with default transparency:

Default_transparency.thumb.png.87c8f80cc62a00275f8751c907df1462.png

 

* without transparency:

No_transparency.thumb.png.a2f2d85ecb1867c5419601a2726d03ad.png

 

* after executing the script under default transparency mode:

After_script.thumb.png.65407238bdb2b7e4cce879d3f6cdff00.png

 

* after rebooting the system without restoring default transparency settings:

No_transparency.thumb.png.a2f2d85ecb1867c5419601a2726d03ad.png

 

So, yes, the trick with Finder brings a nicer look but you have to restore default settings to avoid total loss of transparency on reboot. This would need to be refined through an automated process at boot and restart/shutdown to be properly usable.

 

 

I did already tried to create an automated process in this way:

 

creating a mojavehld.plist in /Library/LaunchDaemons/ to execute a script before shutdown and startup

 

creating a mojavehld.sh in /Library/LaunchDaemons/ to execute the script to keep the "hybrid transparency"

 

pointing the mojavehld.plist to the mojavehld.sh

 

sudo chown 0:0 /Library/LaunchDaemons/mojavehld.plist

sudo chown 0:0 /Library/LaunchDaemons/mojavehld.sh

 

sudo launchctl load -w /Library/LaunchDaemons/mojavehld.plist

 

One little issue I've encountered is that I've to consider to edit this file before the loginwindow:

~/Library/Preferences/com.apple.universalaccess.plist

 

In Mojave this is not in plaintext but binary encoded, so it will result a bit invasive for most users.

 

 

For now I believe that the script I did on the main post is a good workaround for those who want to use a temporary "light mode" until a reboot of course, and even if a bit uncomfortable, relaunching the script after a restart to me is not a drama.

 

Edited by jackluke

Share this post


Link to post
Share on other sites

i was encouraged and I love command line stuff - but then got less excited for the future of my HD3000 system... as this seems to (almost) do what System Preferences/Accessibility/Display "Reduce Transparency" does? I say almost as the GUI enables and updates the full gamut of objects. 

 

by the way, i wish i knew what one needs to restart via command line to get immediate effect...

 

as I was trying to figure out how to switch from Light Mode to Dark Mode via command line so I could turn it on/off via a schedule.

 

this seems to be the key item  
defaults write "Apple Global Domain" "AppleInterfaceStyle" Dark

but after Dark is set, I need to logout/login so see effect.

 

 

 

Edited by tluck

Share this post


Link to post
Share on other sites
11 hours ago, tluck said:

i was encouraged and I love command line stuff - but then got less excited for the future of my HD3000 system... as this seems to (almost) do what System Preferences/Accessibility/Display "Reduce Transparency" does? I say almost as the GUI enables and updates the full gamut of objects. 

 

by the way, i wish i knew what one needs to restart via command line to get immediate effect...

 

as I was trying to figure out how to switch from Light Mode to Dark Mode via command line so I could turn it on/off via a schedule.

 

this seems to be the key item  
defaults write "Apple Global Domain" "AppleInterfaceStyle" Dark

but after Dark is set, I need to logout/login so see effect.

 

 

Yes, I have exploited the "reduce transparency" Accessibility feature discovering that doing it from Terminal until you don't relaunch Finder.app or Dock.app (I mean the CoreServices app) the GUI will keep a partial transparency, it's not a long run patch however it works and totally harmless for the system.

 

In your specific case I guess you refer to these dictionary keys:

  • Light mode: defaults delete Apple\ Global\ Domain AppleInterfaceStyle

  • Dark mode: defaults write Apple\ Global\ Domain AppleInterfaceStyle Dark

 

You can follow the method I used for create my script, to see the immediate effect without logout/login just type from Mojave Terminal:

 

defaults write com.apple.universalaccess reduceTransparency -bool false

killall Finder

killall Dock

killall NotificationCenter

killall Spotlight

 

 

While this is used only for the "light mode":

 

defaults write com.apple.universalaccess reduceTransparency -bool true

killall Finder

killall Spotlight

 

Edited by jackluke

Share this post


Link to post
Share on other sites

Here is my original method "translated" into an AppleScript so anyone can put it on Automator and it will do the trick switching between a full translucent "dark mode" and a semi-translucent "light mode":

 

tell application "System Events"

tell appearance preferences

if dark mode is false then

set dark mode to true

do shell script "defaults write com.apple.universalaccess reduceTransparency -bool false"

do shell script "killall Finder"

do shell script "killall Dock"

do shell script "killall NotificationCenter"

do shell script "killall Spotlight"

else

set dark mode to false

do shell script "defaults write com.apple.universalaccess reduceTransparency -bool true"

do shell script "killall Finder"

do shell script "killall Spotlight"

end if

end tell

end tell

 

 

Here is the Applescript already-ready to download: hybrid dark light switch.zip

 

 

Edited by jackluke

Share this post


Link to post
Share on other sites
On 10/4/2018 at 2:34 PM, jackluke said:

Here is my original method "translated" into an AppleScript so anyone can put it on Automator and it will do the trick switching between a full translucent "dark mode" and a semi-translucent "light mode":

 

tell application "System Events"

tell appearance preferences

if dark mode is false then

set dark mode to true

do shell script "defaults write com.apple.universalaccess reduceTransparency -bool false"

do shell script "killall Finder"

do shell script "killall Dock"

do shell script "killall NotificationCenter"

do shell script "killall Spotlight"

else

set dark mode to false

do shell script "defaults write com.apple.universalaccess reduceTransparency -bool true"

do shell script "killall Finder"

do shell script "killall Spotlight"

end if

end tell

end tell

 

 

Here is the Applescript already-ready to download: hybrid dark light switch.zip

Great work mate. Can you explain what I must do with Automator because I am a beginner with that staff. Thanks!

The script doesn't seem to work correctly. We want it to run the code when we press light mode and do nothing when we press dark mode. How do we do that?

 

Quote

 

Edited by belodelo

Share this post


Link to post
Share on other sites

Try the app I posted here. It's based on Jackluke's work and only applies to Light mode. It does nothing in Dark mode. It's created in Automator from the provided script. But maybe you don't know how to use the tool...

Edited by Hervé

Share this post


Link to post
Share on other sites

Mine has a totally different purpose, is needed to fix the "grey" Finder menu bar on unsupported Metal GPUs for Mojave "light mode", it enables a "partial transparency reduction" while that link you posted is an applescript for "global transparency reduction".

Share this post


Link to post
Share on other sites

I believe you're mistaken and must have missed something, especially as I explained what every line of the script did. You may also refer to Jackluke's explanations above.

 

Of course, if you want to compare things and/or enlighten us, well... show us yours!

Share this post


Link to post
Share on other sites
Posted (edited)

I don't know if anybody else has come across the issue, however upon installing this patch some third party applications such as Chrome made the menubar go back to it's broken state. I found out that it was because Chrome was still seeing the system as being in dark mode, and had adjusted its interface accordingly. To fix this, I wrote a small applescript program to force applications like chrome to act as they would in light theme.

 

Fix Dark Menubar in Third Party Apps.app.zip

Edited by Doofitator
Bugfix

Share this post


Link to post
Share on other sites
7 hours ago, Doofitator said:

I don't know if anybody else has come across the issue, however upon installing this patch some third party applications such   Audacity Find My iPhone Origin         as Chrome made the menubar go back to it's broken state. I found out that it was because Chrome was still seeing the system as being in dark mode, and had adjusted its interface accordingly. To fix this, I wrote a small applescript program to force applications like chrome to act as they would in light theme.

 

Fix Dark Menubar in Third Party Apps.app.zip

transparency is completely disabled, as anyone would expect, i.e. white Finder bar, dark Dock, etc.. So the "hybrid transparency" is only effective for as long as you run the script from a system with transparency enabled and you do not reboot.

Share this post


Link to post
Share on other sites
Posted (edited)

I added some lines for automatic settings when switching between light/dark mode and different machines.

 

set MacModel to (do shell script "system_profiler SPHardwareDataType | awk '/Model Identifier/ {print $3}'")

if MacModel is not "MacBookAir5,2" and MacModel is not "MacPro6,1" then --is the script run on a specific Mojave-supported machine?

  tell application "System Events"

    tell appearance preferences

      set reduceTransparency to get do shell script "defaults read com.apple.universalaccess reduceTransparency -bool"

      if dark mode is false then -- light mode is active

        if reduceTransparency is "1" then -- reduceTransparency was active

          do shell script "defaults write com.apple.universalaccess reduceTransparency -bool false"

          do shell script "killall Dock"

          do shell script "killall NotificationCenter"

          delay 1

          do shell script "defaults write com.apple.universalaccess reduceTransparency -bool true"

          do shell script "killall Finder"

          do shell script "killall Spotlight"

        else -- reduceTransparency was off

          do shell script "defaults write com.apple.universalaccess reduceTransparency -bool true"

          do shell script "killall Finder"

          do shell script "killall Spotlight"

          display dialog "Please reboot manually to disable menu bar transparency." giving up after 5

        end if

      else -- dark mode is active

        if reduceTransparency is "1" then -- reduceTransparency was active

          do shell script "defaults write com.apple.universalaccess reduceTransparency -bool false"

          do shell script "killall Finder"

          do shell script "killall Dock"

          do shell script "killall NotificationCenter"

          do shell script "killall Spotlight"

          display dialog "Please reboot manually to enable menu bar transparency." giving up after 5

        end if

      end if

    end tell

  end tell

end if

Edited by alrunenwurzel
Format

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By headkaze
      Framebuffer patching in Mojave
      Binary patching framebuffers using KextsToPatch in Clover is no longer a viable method in Mojave for Skylake and above. Now you need to use Lilu + WhateverGreen.
       
      Not just for Mojave
      This method of framebuffer patching is not only required for Mojave we recommend it for all previous and future releases of macOS.
       
      Coffee Lake Users
      Please note that the new WhateverGreen will not work with fake Kaby Lake platform-id's. You will need to have either macOS 10.14 Beta 4 (18A336e) or macOS High Sierra 10.13.6 (17G2112). The latter is a special build only available to MacBookPro15,1 or MacBookPro15,2 board id's. You can create a macOS High Sierra 10.13.6 (17G2112) installer by running installinstallmacos.py. (Update: vit9696 added back ability to fake Kaby Lake platform-id's)
       
      Lilu + WhateverGreen
      WhateverGreen is going to replace all the other video patching plugins for Lilu (it currently has merged WhateverGreen, IntelGraphicsFixup, NvidiaGraphicsFixup, Shiki and CoreDisplayFixup). Others will likely follow (such as AppleALC, HibernationFixup and IntelGraphicsDVMTFixup). This is aiming to be the all-in-one solution for video.
       
      Preliminary
      1. Remove:
      - FakePCIID_Intel_HD_Graphics
      - IntelGraphicsFixup
      - NvidiaGraphicsFixup
      - CoreDisplayFixup
      - Shiki
      2. Turn off all graphics injections in Clover:
      - config.plist/Graphics/Inject/ATI=NO
      - config.plist/Graphics/Inject/Intel=NO
      - config.plist/Graphics/Inject/NVidia=NO
      - config.plist/Graphics/ig-platform-id=
      - config.plist/Devices/FakeID/IntelGFX=

      3. Disable DSDT Clover fixes:
      - AddHDMI
      - FixDisplay
      - FixIntelGfx
      - AddIMEI
      4. Disable UseIntelHDMI
      5. Remove boot argument: -disablegfxfirmware
      6. Remove any IGPU and HDMI entries from:
      - config.plist/Devices/Arbitrary
      - config.plist/Devices/Properties
      - config.plist/Devices/AddProperties
      7. Remove any IGPU and HDMI related SSDT and DSDT from:
      - CLOVER/ACPI/patched
      8. Renaming GFX0 -> IGPU
      - WhateverGreen will do this automatically (see caveat below)
      - Be aware that WhateverGreen does not rename all instances of GFX0 -> IGPU but should be okay in most cases
      - You may need to include Clover GFX0 -> IGPU rename for other kexts or ACPI patching that require it
       
      Compile Lilu + WhateverGreen
      Download WhateverGreen. Make sure you place the debug version of Lilu into the root of WhateverGreen before you compile. Install Lilu and WhateverGreen kext's into the usual place. Compile WhateverGreen as debug if you want to view debug output.
       
      Having trouble compiling?
      If you're having trouble compiling you can download the official release binaries or download my (unsupported) build_lilu.sh shell script and run it in a folder to download and build Lilu + WhateverGreen using Xcode automatically. I recommend you try the debug versions first (place them into Clover's EFI/Clover/kexts/Other folder).
       
      Get the device path of your IGPU:
      Download and use the gfxutil tool like so:
      $ ./gfxutil -f IGPU DevicePath = PciRoot(0x0)/Pci(0x2,0x0) ig-platform-id
      For the AAPL,ig-platform-id (AAPL,snb-platform-id for Sandy Bridge) entry Clover requires this value to be in Data format so you need to reverse the bytes. So if you want your platform-id to be 0x3EA50009 first reverse the bytes (0900A53E) then use Xcode's plist editor to add the values to Clover's config.plist.

       
      What ig-platform-id should I use for my system?
      You should choose one that is the closest match to your system. I recommend you do some research on this before choosing one. See post #2 for available options. More info can be found here.
       
      You can determine the generation of your CPU by the first digit after the hyphen.
      Examples:
      - Intel(R) Core(TM) i5-2760QM (Gen 2)
      - Intel(R) Core(TM) i7-5257U CPU @ 2.70GHz (Gen 5)
      - Intel(R) Core(TM) m3-6Y30 (Gen 6)
      - Intel(R) Core(TM) i5-8350U (Gen 8)
       
      Spoofing Intel CPU Gen
      If you need to spoof a different Intel CPU generation you can use the lilucpu=N boot flag. The N refers to the following Intel generations:
      4    SandyBridge 5    IvyBridge 6    Haswell 7    Broadwell 8    Skylake 9    KabyLake 10   CoffeeLake To spoof a CPU you will need to set a valid device-id in your GPU entry in Devices/Properties for the appropriate Intel generation.
       
      Eg. Spoofing Skylake (lilucpu=8 boot flag with device-id=0x16190000), Kaby Lake (lilucpu=9 boot flag with device-id=0x12590000).
       
      Here are some recommended frames:
       
      Gen 2: Sandy Bridge (Intel HD Graphics 2000/3000)
      - S/L/E/AppleIntelSNBGraphicsFB.kext
      - Support started with OS X 10.7.x and ended with macOS 10.13.6
      - Metal support is not available
      - device-id: 0x0102 0x0106 0x010A 0x0112 0x0116 0x0122 0x0126
      - AAPL,snb-platform-id (desktop): 0x00030010 (default)
      - AAPL,snb-platform-id (laptop): 0x00010000 (default)
       
      Gen 3: Ivy Bridge (Intel HD Graphics 2500/4000)
      - S/L/E/AppleIntelFramebufferCapri.kext
      - Support started with OS X 10.8.x
      - device-id: 0x0152 0x0156 0x0162 0x0166
      - AAPL,ig-platform-id (desktop): 0x0166000A (default), 0x01620005
      - AAPL,ig-platform-id (laptop): 0x01660003 (default), 0x01660009, 0x01660004
       
      Gen 4: Haswell (Intel HD Graphics 4200-5200)
      - S/L/E/AppleIntelFramebufferAzul.kext
      - Support started with OS X 10.9.x
      - device-id: 0x0D26 0x0A26 0x0A2E 0x0D22 0x0412
      - AAPL,ig-platform-id (desktop): 0x0D220003 (default)
      - AAPL,ig-platform-id (laptop): 0x0A160000 (default), 0x0A260005 (recommended)
       
      Gen 5: Broadwell (Intel HD Graphics 5300-6300)
      - S/L/E/AppleIntelBDWGraphicsFramebuffer.kext
      - Support started with OS X 10.10.2
      - device-id: 0x0BD1 0x0BD2 0x0BD3 0x1606 0x160E 0x1616 0x161E 0x1626 0x1622 0x1612 0x162B
      - AAPL,ig-platform-id (desktop): 0x16220007 (default)
      - AAPL,ig-platform-id (laptop): 0x16260006 (default)
       
      Gen 6: Skylake (Intel HD Graphics 510-580)
      - S/L/E/AppleIntelSKLGraphicsFramebuffer.kext
      - Support started with OS X 10.11.4
      - device-id: 0x1916 0x191E 0x1926 0x1927 0x1912 0x1932 0x1902 0x1917 0x193B 0x191B
      - AAPL,ig-platform-id (desktop): 0x19120000 (default)
      - AAPL,ig-platform-id (laptop): 0x19160000 (default)
       
      Gen 7: Kaby Lake (Intel HD Graphics 610-650)
      - S/L/E/AppleIntelKBLGraphicsFramebuffer.kext
      - Support started with macOS 10.12.6
      - device-id: 0x5912 0x5916 0x591B 0x591C 0x591E 0x5926 0x5927 0x5923 0x87C0
      - AAPL,ig-platform-id (desktop): 0x59160000 (default)
      - AAPL,ig-platform-id (laptop): 0x591B0000 (default)
       
      Gen 8: Coffee Lake (Intel UHD Graphics 630)
      - S/L/E/AppleIntelCFLGraphicsFramebuffer.kext
      - Support started with macOS 10.13.6 (17G2112) / 10.14 beta 4 (18A336e)
      - device-id: 0x3E9B 0x3EA5 0x3EA6 0x3E92 0x3E91 0x3E98
      - AAPL,ig-platform-id (desktop): 0x3EA50000 (default), 0x3E9B0007 (recommended)
      - AAPL,ig-platform-id (laptop): 0x3EA50009 (default)
       
      Framebuffer Patching
      WhateverGreen does most of the work automatically for you and in most cases you do not need any extra Framebuffer Patching. At the minimum though you should choose an ig-platform-id suitable for your system and place it in config.plist/Devices/Properties like this:

      Here are some reasons why you might need extra Framebuffer Patching:
      - Setting DVMT for those who can't set it above 32 MB in BIOS (framebuffer-stolenmem / framebuffer-fbmem)
      - Setting higher VRAM for 4K users who experience graphical glitches (framebuffer-unifiedmem)
      - Disabling eGPU (disable-external-gpu)
      - Enable pixel clock patch for 4K support (enable-hdmi20)
      - Disabling connectors to enable sleep (framebuffer-pipecount / framebuffer-portcount / framebuffer-conX-type=-1)
      - Removing CNConnectorAlwaysConnected flag for eDP laptop screens on < 10.13.6 (framebuffer-con0-flags=0x00000090)
      - Changing connector types to match your systems ports (framebuffer-conX-type)
       
      Framebuffer Patching Types
      We have three different types of patches:
       
      1. Arbitrary (Recommended)
      framebuffer-patch-enable (required to enable below) framebuffer-framebufferid (optional; defaults to current platform-id) (all below are optional) framebuffer-mobile framebuffer-pipecount framebuffer-portcount framebuffer-memorycount framebuffer-stolenmem framebuffer-fbmem framebuffer-unifiedmem framebuffer-cursormem (Haswell only) framebuffer-camellia framebuffer-flags framebuffer-conX-enable (required to enable below) framebuffer-conX-index framebuffer-conX-busid framebuffer-conX-pipe framebuffer-conX-type framebuffer-conX-flags 2. All Data
      framebuffer-conX-enable (required to enable below) framebuffer-conX-alldata 3. Find / Replace
      framebuffer-patchX-enable (required to enable below) framebuffer-patchX-framebufferid (optional; defaults to current platform-id) framebuffer-patchX-find framebuffer-patchX-replace framebuffer-patchX-count (optional; defaults to 1) You should place your patches in config.plist/Devices/Properties in Clover config.plist.
       
      Here are some example patches:
      - 32MB BIOS, 19MB stolen (framebuffer) 9MB fbmem (cursor) 2048MB unifiedmem (vram)

       
      - Pipe / Port Count 3 to 2
      - Connector 1 DP to HDMI
      - Connector 2 Disable

       
      Here is an example of the All Data method:

       
      Here is an example of the Find / Replace method:

       
      Framebuffer Dumps
      There are two ways to dump your framebuffer data (both require WhateverGreen + Lilu debug versions):
       
      1. Using -igfxdump boot flag to dump IGPU framebuffer kext to /AppleIntelFramebuffer_X_Y (root of your boot drive)
       
      There are several ways of reading this dump:
      - Using 010 Editor along with the IntelFramebuffer.bt template
      - Using Hackintool File->Open menu
       
      2. Using -igfxfbdump boot flag to dump native and patched framebuffer table to ioreg at IOService:/IOResources/WhateverGreen
       
      There are several ways of reading this dump:
      - Using dump_platformlist.sh shell script
      - Using Hackintool File->Import->IOReg Dump menu
       
      3. Using Hackintool Framebuffer->macOS 10.14 menu
       
      Debug Output
      To get debug output from Lilu use the -liludbgall liludump=60 boot flags. You will need to compile Lilu and WhateverGreen as debug for both of these flags to work. Log files should be located at /var/log/Lilu_*.
       
      To view debug paste the following into Terminal (weglog.txt will output to your home directory):
      log show --predicate 'process == "kernel" AND (eventMessage CONTAINS "WhateverGreen" OR eventMessage CONTAINS "Lilu")' --style syslog --source --last boot >weglog.txt Getting Help

      To help the users of this forum diagnose issues with your configuration please generate a Lilu debug log and then run gen_debug.sh to generate a folder of debug files you can attach to a forum post requesting help.

      Credits
      - vit9696 and lvs1974 for WhateverGreen (Full Credits) and Lilu (Full Credits)
      - Andrey1970 for his guide on applelife.ru
      - RehabMan for all data patching method, ioreg framebuffer dump and other contributions
       


    • By fantomas1
      macOS Mojave 10.14.6 beta (18G29g)
    • By fusion71au
      Making a High Sierra USB Installer Entirely From Scratch in Windows
      This is a proof of concept tutorial, to show it's possible to create a vanilla High Sierra installer, entirely from scratch, in Windows (even without App Store downloaded "Install macOS High Sierra.app" from a real Mac ).  @PikeRAlpha's link to Apple's Software Catalog provides us with all the URLs necessary to download the needed files directly from Apple instead of some dubious source from the internet...
       

      Pre-Requisites
      8GB or larger USB drive Boot Disk Utility v2.1.2017rev021b from @CVAD TransMac (free 15 day trial) Paragon Hard Disk Manager Free Download Installer Files Directly from Apple
      1)  Browse Apple's Regular Software Catalog and find the URLs to download the following 6 installer files...
      BaseSystem.dmg BaseSystem.chunklist InstallInfo.plist InstallESDDmg.pkg AppleDiagnostics.dmg AppleDiagnostics.chunklist (Hint - search page for "InstallESD" to find its URL and others nearby)

      to a folder named "SharedSupport" on your Windows NTFS drive.  A browser download manager (eg Chrono for Chrome, dTA for FireFox) is handy since InstallESD is >4GB ---> allows you to pause/resume interrupted download...

      2)  Rename InstallESDDmg.pkg to InstallESD.dmg
      3)  Edit InstallInfo.plist with WordPad/text editor to remove the chunklistURL and chunklistid keys for InstallESD, and renaming it from InstallESDDmg.pkg to InstallESD.dmg (example of edited file attached to this post)...
      Note:  You can verify the SHA1 checksum of your InstallESD.dmg and BaseSystem.dmg with the correct ones at this website.
      Boot Disk Utility to format the Installer USB and Restore OS X Base System HFS partition
      1.  Format USB with BDU & latest Clover ---> creates boot files in CLOVER partition + second FAT partition
      2.  Extract 4.hfs from \SharedSupport\BaseSystem.dmg with BDU --> save to it's local folder
      3.  Restore 4.hfs to USB second partition with BDU --->  2nd partition becomes bootable "OS X Base System"
      Paragon Hard Disk Manager to extend HFS Partition to its Full Extent
      Open Paragon Partition Manager Free and resize the second partition of the USB drive to the full size allowed.  Don't forget to apply the changes at the end...
      Transmac to Copy "SharedSupport" folder to OS X Base System
      1.  Open the TransMac program and navigate to the HFS+ Volume/Install macOS High Sierra.app/Contents folder.  Right click anywhere in the empty space on the RHS pane and select "Copy Here"...
      2.  In the next stage, select the "SharedSupport" folder we created above as the "Files and Folders to be copied to the Mac Volume"...
      Clover Settings
      Clover configuration is required now.  The default config.plist (in the Clover FAT32 partition of the USB) maybe sufficient to boot your machine if you’re lucky.  If not, look at the Clover Wiki, Clover Instructions and Clover Configuration Thread for pointers and edit /EFI/Clover/config.plist accordingly with Wordpad or Notepad.
      The location of the important configuration files for Clover are summarized below
      config.plist--->EFI/CLOVER folder DSDT.aml with or without SSDT.aml--->EFI/CLOVER/ACPI/patched (don't need one if your DSDT is auto patched by Clover in config.plist) Kexts eg FakeSMC, NullCPUPowerManagement --->EFI/CLOVER/kexts/<osx version> or /Other. NB BootDiskUtility by default already has FakeSMC.kext installed here.  You may need to add VoodooPS2Controller for your laptop keyboard/trackpad to work. If UEFI booting, you will most likely need one of the OsxAptioFixDrv-64 drivers copied from /EFI/CLOVER/drivers-off/drivers64UEFI to /EFI/CLOVER/drivers64UEFI. If you want to use the installer to run High Sierra in Windows on VMware, you can follow my guide to set up the Virtual Machine and replace Clover's default config with EFI_Clover for VMware (which is compatible to run in VMware).  In the screenshots below, I have attached the USB Installer (in this case PhysicalDrive7) to my macOS Virtual Machine.  Reboot the system to the USB installer to install High Sierra ...
      What happens if we don't have access to TransMac or Paragon Hard Disk Manager?
      Not a problem, as long as we get "OS X Base System" bootable, we can launch terminal from the Utilities Menu to copy the SharedSupport folder over to the Installer app.  In essence, we will build the full installer app = 5GB+ on the target HD eg "Macintosh HD", by copying both the "small" installer app = 15MB (on "OS X Base System") and the SharedSupport folder from the NTFS volume (mounted in this example on /Volumes/DATA)...
      -bash-3.2# cd / -bash-3.2# cp -R Install\ macOS\ High\ Sierra.app /Volumes/Macintosh\ HD/ -bash-3.2# cp -R /Volumes/DATA/SharedSupport /Volumes/Macintosh\ HD/Install\ macOS\ High\ Sierra.app/Contents/  
      ...then start installation with the startosinstall utility...
      -bash-3.2# /Volumes/Macintosh\ HD/Install\ macOS\ High\ Sierra.app/Contents/Resources/startosinstall --volume /Volumes/Macintosh\ HD --converttoapfs NO --applicationpath /Volumes/Macintosh\ HD/Install\ macOS\ High\ Sierra.app  
      The above steps can be automated with the attached "startosinstall.command" script, which will assemble "Install macOS High Sierra.app" on "Macintosh HD" and launch the startosinstall utility targeting the "Macintosh HD" volume.  Copy/download to "Macintosh HD", then run in terminal (after attaching DATA USB with /Shared Support folder)...
      cd "/Volumes/Macintosh HD" chmod +x startosinstall.command ./startosinstall.command Updated Download Links for macOS Mojave 10.14.5_18F132
      Browse Apple's Regular Software Catalog and find the URLs to download the following 6 installer files...
      BaseSystem.dmg BaseSystem.chunklist InstallInfo.plist InstallESDDmg.pkg AppleDiagnostics.dmg AppleDiagnostics.chunklist  
      Note: In Mojave, Apple has removed the --converttoapfs NO and --applicationpath arguments from the startosinstall utility....
       
      eg to use startosinstall for the above section "What happens if we don't have access to TransMac or Paragon Hard Disk Manager?", the syntax is now
      -bash-3.2# /Volumes/Macintosh\ HD/Install\ macOS\ Mojave.app/Contents/Resources/startosinstall --volume /Volumes/Macintosh\ HD  
      This basically means that for Mojave, the default installation will always convert the target volume to the apfs file system.
       
       
      startosinstall.command.zip
      InstallInfo.plist_edited_10.13.6.zip
      InstallInfo.plist_edited_10.14.5.zip
       
       
    • By fantomas1
      This update:
      • Adds AirPlay 2 support for sharing videos, photos, music and more from your Mac directly to your AirPlay 2-enabled smart TV
      • Adds the ability to follow a magazine from the Apple News+ catalog browsing view
      • Includes support for the Reiwa (令和) era of the Japanese calendar
      • Improves audio latency on MacBook Pro models introduced in 2018
      • Fixes an issue that prevented certain very large OmniOutliner and OmniPlan documents from rendering properly
       
      Update
      Combo

      View full article
    • By fantomas1
      This update:
      • Adds AirPlay 2 support for sharing videos, photos, music and more from your Mac directly to your AirPlay 2-enabled smart TV
      • Adds the ability to follow a magazine from the Apple News+ catalog browsing view
      • Includes support for the Reiwa (令和) era of the Japanese calendar
      • Improves audio latency on MacBook Pro models introduced in 2018
      • Fixes an issue that prevented certain very large OmniOutliner and OmniPlan documents from rendering properly
       
      Update
      Combo
×