Jump to content
Austere.J

NightShiftUnlocker - Dynamically unlock Night Shift for all Macs

33 posts in this topic

Recommended Posts

Advertisement

Thank you for the great job but doesn't work attached to a samsung tv, is there a workaround for TV monitors?

Share this post


Link to post
Share on other sites

I've installed this and Lilu.kext to /Library/Extensions/ using KCPM Utility Pro, rebooted, and they are visible in kextstat. However the Night Shift tab doesn't appear in System Preferences, even though the toggle is visible in Notification Manager.

 

e5am8ER.png

Share this post


Link to post
Share on other sites

I've installed this and Lilu.kext to /Library/Extensions/ using KCPM Utility Pro, rebooted, and they are visible in kextstat. However the Night Shift tab doesn't appear in System Preferences, even though the toggle is visible in Notification Manager.

 

e5am8ER.png

 

 

^ same here

 

Hi! Version 2.1 should fix your issue. Thanks for your support. :)

Share this post


Link to post
Share on other sites

Hello!

With NightShiftUnlocker.kext in case of the High Sierra updating falls in a panic.

And the system with it normally boots

Can confirm this behavior: with NightShiftUnlocker I got kernel panic when booting the High Sierra installer, but it can boot normally to the OS. I'm trying to update from High Sierra GM to the official release and I had to remove the kext from Clover/Kexts/Other.

 

Is there a boot flag we can use?? or something to prevent from loading on the installer?

 

Cheers!

Share this post


Link to post
Share on other sites

Can confirm this behavior: with NightShiftUnlocker I got kernel panic when booting the High Sierra installer, but it can boot normally to the OS. I'm trying to update from High Sierra GM to the official release and I had to remove the kext from Clover/Kexts/Other.

 

Is there a boot flag we can use?? or something to prevent from loading on the installer?

 

Cheers!

Hi,

 

I just upgraded to macOS High Sierra. I will update the code to prevent it from loading during the installation soon.

 

Thanks for your reply and support.

 

Cheers,

FireWolf

Share this post


Link to post
Share on other sites

No, thenthank you for such an amazing kext.

 

I now realize that I can force lilu off and thus all the plugins on the installer via a boot arg. Then use lilu normally on a working system.

 

It would be amazing when you update the app and does this normally.

 

I was used to do the hex edit con Corebrightness.framework everytime a new Public Beta came up. This kext makes this process a LOT mot easier.

 

I don't know how to thank you enough.

 

Cheers!

 

EDIT: I meant thank you.

Share this post


Link to post
Share on other sites

Works fine here too  :D

 

post-1502423-0-23644800-1506478749_thumb.png

As of the KP issue on install: this also happens when booting the recovery partition. NightShiftUnlocker can be disabled with bootarg -nsuoff, so as a workaround I've created custom osxinstall boot entries with -nsuoff as an additional arg

Share this post


Link to post
Share on other sites

Thanks.  :thumbsup_anim:

I now have nightshift on my SandyBridge HD3000 Acer 4830T (a.k.a MacBook Pro 8,1).

Used NSUnlocker 2.1 and Lilu 1.1.7

 

Edit: Currently running macOS 10.12.6

Share this post


Link to post
Share on other sites

Works fine here too  :D

 

attachicon.gifSchermafbeelding 2017-09-27 om 04.25.57.png

As of the KP issue on install: this also happens when booting the recovery partition. NightShiftUnlocker can be disabled with bootarg -nsuoff, so as a workaround I've created custom osxinstall boot entries with -nsuoff as an additional arg

 

 

That's the arg I was trying to find!

 

I did remove the kext, upgraded to HS and reinstalled the kext. I could have used -liluoff, too because the other plugin I use is AppleALC and wasn't needed to use the installer/recovery. But now I now.

 

However, it would be fine if the plugin prevents itself from loading on recovery/installers automagically.

 

Cheers!

Share this post


Link to post
Share on other sites

Hi,

 

I just upgraded to macOS High Sierra. I will update the code to prevent it from loading during the installation soon.

 

Thanks for your reply and support.

 

Cheers,

FireWolf

I want to add. The same problem with Recovery

Thank you for work!

Share this post


Link to post
Share on other sites

Now that Lilu 1.2.0 is out, NightShiftUnlocker doesn't work for me :(

 

I'm hoping this great dev would come out with something amazing.

 

Cheers!

Share this post


Link to post
Share on other sites

@AustereJ,

 

All OK here on my desktop (GA-P55aUD3/Intel i5-750/ATI HD 5770), running High Sierra 10.13.1Beta (17B35a).  Using iMac11,3 SMBIOS and with Lilu v1.2.0 & NightShiftUnlocker v2.2 loaded....

 

post-846696-0-12554000-1507966235_thumb.png

 

 

 

Can confirm this behavior: with NightShiftUnlocker I got kernel panic when booting the High Sierra installer, but it can boot normally to the OS. I'm trying to update from High Sierra GM to the official release and I had to remove the kext from Clover/Kexts/Other.

Now, no problems, even if you inject Lilu v1.2.0+NSU v2.2 from Clover /Kexts/10.13 folder when booting into Recovery or Installer.  My boot.log...

 

 

 


61:045  0:000  Loading boot.efi  status=Success
61:398  0:353   Booter DevicePath: PcieRoot(0x0)/Pci(0x1F,0x2)/Sata(0x5,0x0,0x0)/HD(4,GPT,CE5631EB-9997-40A5-9297-F83D648D2C91,0xCED12F8,0x135F20)/\com.apple.recovery.boot\boot.efi
61:398  0:000   Booter LoaderPath: \com.apple.recovery.boot\boot.efi
61:398  0:000  GetOSVersion: 'OSVersion1: 10.13' 'Installer: no' 'OSVersion2: 10.13' 10.13 (17A405)
FSInjectionInstall ...
- Our FSI_SIMPLE_FILE_SYSTEM_PROTOCOL installed on handle: DCD91A18
61:417  0:000  Use origin smbios table type 1 guid.
61:418  0:000  Preparing kexts injection for arch=x86_64 from EFI\CLOVER\kexts\Other
61:418  0:000  Extra kext: EFI\CLOVER\kexts\Other\RealtekRTL8111.kext
61:487  0:069  Extra kext: EFI\CLOVER\kexts\Other\FakeSMC.kext
61:537  0:050    |-- PlugIn kext: EFI\CLOVER\kexts\Other\FakeSMC.kext\Contents\PlugIns\IntelCPUMonitor.kext
61:566  0:028    |-- PlugIn kext: EFI\CLOVER\kexts\Other\FakeSMC.kext\Contents\PlugIns\HWInfo.kext
61:566  0:000  Preparing kexts injection for arch=x86_64 from EFI\CLOVER\kexts\10.13
61:566  0:000  Extra kext: EFI\CLOVER\kexts\10.13\NightShiftUnlocker.kext
61:609  0:042  Extra kext: EFI\CLOVER\kexts\10.13\Lilu.kext

 

 

 

Thanks for your efforts  :).

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 olvko
      As I found no binary kext for DiskArbitrationFixup Lilu plugin from https://github.com/Goldfish64/DiskArbitrationFixup, I compiled current version. Attached below, as it may be useful for other people.
       
      This Lilu plug-in disables error "The disk you inserted was not readable by this computer" after macOS boot in case you have eg. Linux partitions in the same computer.
       
      Compiled under macOS 10.14.3 without debugging symbols against Lilu 1.3.4 headers. Requires Lilu.kext (https://github.com/acidanthera/Lilu) alongside to work.
       
      I do not give any warranty for its work and I am not an author of original code.
      DiskArbitrationFixup-08032019.zip
    • By poles89
      Hi guys,
       
      Though native graphics acceleration is supported on i3 from Mojave, I'm not able to manage to get it.
       
      This is my system configuration :
      Motherboard:  Asus Prime H370-Plus
      CPU: i3-8100 (UHD 630)
      OS: Mojave 10.14.2
       
      I'm trying every possible way to get full graphics acceleration. But whatever I try it shows only 4MB video memory or leads to Kernal Panic. Here are some ways I have tried so far:
       
      Prerequisites: 
      Installed latest Lilu+WEG on L/E. set DMVT prealloc to 64MB on bios.  
      Option 1: IntelGFX-> 0x3E928086, ig-platform-id-> 0x3E9B0007, Inject Intel = true. Output:  Kernal Panic
      Option 2: Blank IntelGFX, blank ig-platform-id, Inject Intel = false Output:  Kernal Panic
      Option 3:  IntelGFX-> 0x3E928086, ig-platform-id-> 0x5912000, Inject Intel = true.  Output: Booted Successfully but no graphics acceleration.
                     I knew that ig-platform-id-> 0x5912000 doesn't work in mojave and its works only for high sierra but I set this because with this ig-platform-id I can boot. Another way I can boot it by
                     setting invalid Fake IntelGFX value like 0x12345678.
      Option 4:  Downloaded Intel FBPatcher & followed this guide. But as I opened the app, its shows like this:
       
                     
                    
                     It clearly indicates it neither can detect Intel CPU generation nor GPU memory (currently shows 0 MB). I changed to different PlatformId from the drop down but no improvement. Anyway I
                     applied a patch with SMBIOS ->Macmini8,1 by someione's recommendation . I attached a config file (config_fbpather.plist) for this. Output:  Kernal Panic
       
      I have tried the upper mentioned methods with SMBIOS like  iMac14,2 / iMac18[1,2,3]  and Macmini8,1. I'm using HDMI port for display output. Now I don't know whats wrong with theses methods but maybe someone can help me to figure out this problem. I have also attached those config.plist files.
       
      Thanks in advance.
       
      config_fakeid_0x3E928086.plist
      config_fbpatcher.plist
      config_fbpatcher_with_device_id.plist
      config_platform-id_0x59120000.plist
    • 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 0x3E92 0x3E91
      - 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 EduardoMenezes
      Good evening, friends of InsanelyMac.
      I have an Acer Aspire E5-571 notebook with Intel processor and Intel Graphics 5500 hd graphics card. When I was using the Sierra, the video card was recognized without problems. Now that I'm using Mojave I can not get the acceleration to work.
      I've been researching something about having to use Lilu.kext and whatevergreen.kext but I do not have enough knowledge to solve this problem.
      I need the help of someone who can explain to me how to solve this acceleration problem. I'm sure it will be of great value to other users like me.
      Thank you very much.

    • By Teress
      Quick and easy way How to speedup the macOS Dock. macOS Tutorial how to get rid of annoying delay while revealing the Dock. Speedup your macOS Dock instantly and forever.
       
      Open Terminal Application and run these commands:
       
      To set no delay when revealing the macOS Dock:
      defaults write com.apple.dock autohide-delay -float 0
      killall Dock
       
      To revert back stock Apple settings of the macOS Dock:
      defaults delete com.apple.dock autohide-delay
      killall Dock
×