OpenCoreの0.6.7が公開されてかなり経ってしまいましたが、ようやく0.6.6からアップデートしました。config.plistの変更点はほとんどありませんでした。
Table of Contents
0.6.7をダウンロードする
公式のダウンロードページは以下です。Kext Updater.appがダウンロードしてくれる内容を使っても良いです。
OpenCore bootloader. Contribute to acidanthera/OpenCorePkg development by creating an account on GitHub. Releases · acidanthera/OpenCorePkg - GitHub |
OpenCore 0.6.7とmacOS 11.2.3で動作確認している手元のマシンは以下です。
- ASUS Z390 ROG MAXIMUS HERO + 9900K + Radeon RX 580
.efiファイルを差し替える
更新するためには、今までと同様に、X64の方のフォルダの中身を、現用のファイルと入れ替えます。入れ替えるべきファイルは以下でした。
- EFI/BOOT/BOOTX64.efi
- EFI/OC/OpenCore.efi
- EFI/OC/Driversの中のうち、現在使用しているもの:手元のマシンでは、OpenCanopy.efiとOpenRuntime.efi
- EFI/OC/Toolsの中のうち、現在使用しているもの:手元のマシンでは、OpenShell.efi
ACPIとKextsは、OpenCoreの範疇では無いので変更不要です。
config.plistを更新する
現在のconfig.plistをconfig_old.plistと改名し、配布パッケージに入っているsample.plistをコピーして持ってきて、これをconfig.plistにしました。PlistEDPlusを使って、双方を開いて、古いconfig.plistの項目をコピーする方針で、新しいconfig.plistを作りました。
変更点は以下のようでした。
- UEFI/AudioにResetTrafficClassが追加されていました。レガシーHDAにおいてTCSEL (トラフィッククラスセレクトレジスター) をTC0にリセットすると書いてあります。AppleALCを使う場合はそちらで設定したほうが良い、というようなことが書いてありましたので、デフォルトのfalseにしておきました。
- UEFI/Input/KeyMergeThresholdは機能しなくなったので削除されたようです。削除しておきました。
- UEFI/Output/GopPassThroughという項目が追加されていました。UGAプロトコル上にGOP (グラフィックアウトプットプロトコル) を提供するとの説明です。ProvideConsoleGopの設定と関係があるようです。macOSのブートローダが必要とするグラフィックスと、マザーボードの内蔵グラフィックスの乖離を埋める一連の機能のようです。最近のiGPU付きCPUを使いながら、MacPro5,1の設定をする場合に関係するパラメータのようです。iMacで設定しているので不要かと思い、デフォルトのfalseにしておきました。
- UEFI/Quirks/ActivateHpetSupportという項目が追加されていました。ICH6などを使った古いマザーボード設定でHEPT (高精度イベント タイマー) を有効にできない場合に、それを可能にするオプションだそうです。ICH6は2003年頃のサウスブリッジチップです。古いマザボへの対応のようなので不要かと思い、デフォルトのfalseにしておきました。
いずれも大きな変更ではなさそうです。以上の設定で、0.6.6から0.6.7に移行できました。
バージョンが更新されない
0.6.7にアップデートしたものの、Kext UpdaterやHackintoolでチェックすると0.6.6のままだと言われて、0.6.7のダウンロードを推奨されました。これはnvramの更新ができていないためのようです。ターミナルから、
nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:opencore-version
とタイプして、OpenCoreのバージョンを示す変数を取得すると、以下のように表示されてしまいました。
4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:opencore-version REL-066-2021-02-02
066の設定のままでした。この問題は、OpenCoreの起動画面でnvramをリセットする項目を選べば解決します。もしくは、ターミナルから
sudo nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:opencore-version=""
とタイプして、この変数を削除してしまうことでも解決します。nvramコマンドでは、何も無い値を設定することで変数を削除できます。なので、この後にnvramコマンドで確認すると、
nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:opencore-version nvram: Error getting variable - '4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:opencore-version': (iokit/common) data was not found
というように表示されて、この変数が消えていることがわかります。正しいopencore-version値は、次の再起動時に自動的に更新されます。再起動後にnvramコマンドを入力すれば、
4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:opencore-version REL-067-2021-03-01
と表示されるようになりました。Kext UpdaterやHackintoolもOpenCoreの新しいバージョンを認識するようになりました。