サイトアイコン Boot macOS

パッチを当てるkext: Lilu.kext

Lilu.kextはkext (カーネル拡張)にパッチを当てる仕組みを提供するkextです。ライブラリやプログラムにもパッチを当てられるようですが、kextにパッチを当てるために便利に用いられています。今年になってから登場した新しいkextです。元々は、サウンドを提供するkextであるAppleALC.kextを開発していた人が、パッチ当ての部分を分離して公開してくれたものです。なので、現在のAppleALC.kextもLilu.kextを使っています。

Arbitrary kext and process patching on macOS. Contribute to acidanthera/Lilu development by creating an account on GitHub.
Releases · acidanthera/Lilu - GitHub

Lilu.kextはパッチを当てるkextと一緒に使います。バニラな構成ならば、それぞれをEFI/CLOVER/kextsのOtherもしくは該当するバージョンのフォルダに一緒に入れます。Cloverもconfig.plistのKextsToPatchセクションの記述でkextにパッチを当ててくれます。この記述は簡単なのですが、kext本体のバイナリーファイルにしかパッチを当てられません。Lilu.kextは、パッチ方法を指定するkextを開発する必要がありますが、kext本体以外の様々なファイルにや設定にパッチを当てられるようです。

以下で、Lilu.kextと一緒に使うためのkextを紹介します。

AppleALC

macOSのHD audio機能を使って音を出すためのパッチ。こちらで説明しました。

古いバージョンは単独で動きますが、パッチ当て機能をLilu.kextに分離した後のバージョンは、Lilu.kextと一緒に使います。

Native macOS HD audio for not officially supported codecs - acidanthera/AppleALC
Releases · acidanthera/AppleALC - GitHub

WhateverGreen

10.12.6からRX480/580などのAMDグラフィックスカードがサポートされました。しかし、メインディスプレイにはならず、起動時にはCPU内蔵GPUなどの補助GPUが必要でした。これを解決するのがWhateverGreen.kextです。Radeonを使う人には必須です。以前はAMDグラフィックスカードの不具合に対応するkextでした。それでAMDカラーのgreenという名前が付いています。今は、

の機能を統合し、ディスプレイに関係するパッチ機能をすべて盛り込んだkextになりました。詳しくは以下をご覧ください。これを入れれば統合されてしまったkextは使う必要がありません。

WhateverGreen.kext 1.2.0GPU関連のkextである IntelGraphicsFixup NvidiaGraphicsFixup Shikiは、WhateverGreen.kextに統合されました。これからは、GPUがNVIDIAでも、Intelでも、AMD Radeonでも、WhateverGreenだけを使うのが正しいやり方のようです。https://www.insanelymac.com/forum/topic/325987-whatevergreen-support-topic/?page=20&tab=comments#comment-2625396の2018年7月12日の投稿によると、IntelGraphicsFixup, NvidiaGraphicsFixup, Shikiは公式に開発中止になり、WhateverGreenの一部になりました。新しいWha...
GPU関連kextがWhateverGreen.kext 1.2.0に統合されました - Boot macOS

NvidiaGraphicsFixup

このkextはWhateverGreenに統合されました。

NVIDIAのGPUをiMac15,1 iMac17,1 MacPro 6,1のシステム設定で使おうとすると、 ブート後に画面が黒くなって起動しなかったり、画面がスリープしたりする問題が発生します。 WebドライバだけでなくmacOS標準のドライバでも発生します。 iMacのレティナディスプレイやProのデュアルグラフィックスカードハードウェアを前提とした macOSの設定が、この問題を引き起こしているようで、black screen問題と呼ばれています。このkextを使うと、black screenを回避できます。

An open source kernel extension providing patches for NVidia GPUs. - lvs1974/NvidiaGraphicsFixup
Releases · lvs1974/NvidiaGraphicsFixup - GitHub

IntelGraphicsFixup

このkextはWhateverGreenに統合されました。

Intel HD Graphicsを使う場合に発生する以下の不具合を解決します。

ブートロゴの乱れは、起動時のアップルロゴとプログレスバーが表示される場面の後半で、 表示が8個に分裂してストライプ状になる現象です。起動時だけのことで、無視しても良いくらいの問題ですがこれが解決されます。もう一つのPAVPフリーズ問題はもっと深刻で、 一部の動画サイトをSafariで閲覧する場合や、iTunesでiTunes Storeの予告編を見る場面で、動画再生が滞ったり、場合によってはOSがフリーズする問題です。

An open source kernel extension providing patches to select Intel GPUs. - lvs1974/IntelGraphicsFixup
Releases · lvs1974/IntelGraphicsFixup - GitHub

Shiki

このkextはWhateverGreenに統合されました。

iTunesにあるDRM保護されているビデオはivy bridge以降で再生できない問題があります。 購入した映画や、その予告編を再生しようとすると、 映像が出ないとか、音だけしか出ない状態です。 これを回避します。

Protected video playback support and hardware video acceleration on various hardware. - acidanthera/Shiki
Releases · acidanthera/Shiki - GitHub

NightShiftUnlocker

10.12.4から導入されたNight Shift機能ですが、これにはMacBookPro9,x iMac13,x Macmini6,x MacBookAir5,x MacPro6,x MacBook8,x以降の機種が対応しています。これより古い機種でNight Shiftを動かすためのkextです。

Dynamically unlock the Night Shift for all Macs. Contribute to 0xFireWolf/NightShiftUnlocker development by creating an account on GitHub.
Releases · 0xFireWolf/NightShiftUnlocker - GitHub

 そのほか

用途・効果を理解できていないのですが、Lilu.kextのサイトによると、このほかにも以下のようないろいろなパッチがあるようです。

AirportBrcmFixup Broadcom Airport Wi-Fi cardsへのパッチ

AzulPatcher4600 Intel HD 4600 へのパッチ

CoreDisplayFixup 非Iris Intel graphicsの高解像度サポート

CPUFriend 動的なパワーマネージメント

EnableLidWake ラップトップで蓋を開けた時のIntel Graphicsスリープ解除対応

HibernationFixup 3モードと25モードのハイバネーション対応

モバイルバージョンを終了