OpenCore 0.6.9から0.7.0に更新

OpenCoreの0.7.0が公開されたので0.6.9からアップデートしました。config.plistの大きな変更点はありませんでした。またOpenCanopyが動かなくなりましたので、EFIのOC/Resourcesの中身を、配布されているものに差し替えました。

0.7.0をダウンロードする

公式のダウンロードページは以下です。Kext Updater.appがダウンロードしてくれる内容を使っても良いです。

OpenCore 0.7.0とmacOS 11.4で動作確認している手元のマシンは以下です。また、kext類はKext Updaterを使って最新版に入れ替えてあります。

  • ASUS Z390 ROG MAXIMUS XI HERO + 9900K + Radeon RX 580 + macOS Big Sur 11.4
  • ASRock Z590 Extreme + 10900K + Radeon 5700XT + macOS Big Sur 11.4

.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を作りました。

config.plistで設定する項目の変更点は以下のようでした。

  • Kernel/QuirksにProvideCurrentCpuInfoという項目が追加されていました。kernelに現在のCPU情報を提供するというフラグです。Microsoft Hyper-Vのためのパッチだそうです。デフォルトのままfalseにしておきました。
  • Misc/SecurityにAllowToggleSipという項目が追加されていました。OpenCoreピッカー(起動時の選択メニュー)でSIPをon/offできるようにするかどうかの選択肢です。元々SIPを無効にすることをOpenCoreでは推奨していないので、必要な場合のみ、一時的に使って下さいという記述がありました。なのでデフォルトのままfalseにしておきました。
  • NVRAM/Add/7C436110-AB2A-4BBB-A880-FE41995C9F82にForceDisplayRotationInEFIという項目が追加されていました。EFIの表示を回転できるようです。デフォルトの0度にしておきました。
  • UEFI/OutputにGopPassThroughという項目があります。0.6.9ではbool型でfalseを設定していたのですが、0.7.0ではこれがstring型になってました。on/offの他に、Appleという選択肢が可能になったためstring型になったようです。Appleの場合は、AppleFramebufferInfoを有効にしたプロトコルで提供すると書いてありました。今まで問題なかったので、デフォルトのままのDisabledにしておきました。
  • UEFI/ProtocolOverridesにAppleEg2Infoという項目が追加されていました。Apple EFI Graphics 2プロトコルをビルトインのバージョンに入れ替えるという機能らしいです。EFI画面の回転に関係するようです。デフォルトのままfalseにしておきました。
  • Misc/BootにあるPickerVariantの指定方法が変更になった様です。詳細は後述します。デフォルト値は今までと同じくAutoなので、そのままで良いです。

いずれも大きな変更ではなさそうです。以上の設定で、0.6.9から0.7.0に移行できました。

Pickerアイコン指定方法が変更

前節の変更で起動はできましたが、0.6.6や0.6.8の時のようにOpenCanopyが動かなくなり、起動時の選択メニュー (Pickerメニュー)が文字だけのメニューに戻ってしまいました。そこで以前と同じく、以下から、Resources/Image, Font, Labelを取り寄せて交換したところ、動くようになりました。

上記からダウンロードしたファイルを確認すると、Resources/Imageの中身にさらにディレクトリのある構造になってます。以前は、Imagesの中に直接アイコンファイルが置かれていました。今回からは、ESPのOCフォルダーにも、配布されている形のディレクトリ構造を保ってコピーすれば良いようでした。

コメントで教えていただいて気づいたのですが、Pickerに表示するアイコンの指定方法が変更になった様です。これを指定するパラメータはconfig.plistのMisc/BootにあるPickerVariantです。0.6.9までは、この値(文字列です)は、

  • Auto (デフォルト) 背景色に合わせて適切なアイコンが自動選択される
  • Default 通常の名前のアイコンファイルが選択される
  • Old Oldで始まる名前のアイコンが選択される
  • Modern Modernで始まる名前のアイコンが選択される
  • (それ以外の値)カスタムアイコンとしてサポートされていれば指定できる

という規則でした。ファイル名の最初の文字で区別する方式です。例えばHDDのアイコンなら、PickerVariantにDefaultを指定するとHardDrive.icnsという名前のファイルが使用されますが、Modernを指定するとModernHardDrive.icnsという名前のファイルが使用されます。

これに対して、0.7.0では、上で説明したようにディレクトリで分類されるようになりました。アイコンファイルは66個くらいあるので、名前だけで区別するのは面倒ということだと思います。なので0.7.0のPickerVariantは、

  • Auto 背景に合わせて自動的に選択される。
  • Default Imageの中のAcidanthera\GoldenGateを選択する。
  • Acidanthera\GoldenGate Imageの中のこのディレクトリを選択する。macOS 11スタイルのアイコンセット。
  • Acidanthera\Syrah Imageの中のこのディレクトリを選択する。macOS 10.10スタイルのアイコンセット。
  • Acidanthera\Chardonnay Imageの中のこのディレクトリを選択する。スタイルのアイコンセット。

特にこだわりがなければ、今まで通り、デフォルト値のAutoを指定しておけば良いと思います。