[Hackintosh][OpenCore] macOS Sonoma のインストール(1)下準備
Overview
現在は OpenCore で macOS Venture を運用している。
[Hackintosh] OpenCore で Ventura を立てる(1) BIOS 設定
https://wacw.cf/2023/04/05/hackintosh-ventura-with-opencore-1/
[Hackintosh] OpenCore で Ventura を立てる(2) EFI フォルダーを作成する
https://wacw.cf/2023/04/05/hackintosh-ventura-with-opencore-2/
[Hackintosh] OpenCore で Ventura を立てる(3) USB インストーラーを作成する
https://wacw.cf/2023/04/05/hackintosh-ventura-with-opencore-3/
[Hackintosh] OpenCore で Ventura を立てる(4)まとめ
https://wacw.cf/2023/04/05/hackintosh-ventura-with-opencore-4/
[Hackintosh] USB ポート 15 個制限用の USBPorts.kext を作成する
https://wacw.cf/2023/04/07/usb-port-mapping-with-usbport-kext/
macOS Sonoma へアップグレードすることにした。クリーンインストールをする。
少し待てば macOS Sequoia がリリースされるが、ちょうどアップグレードのためのまとまった時間が取れるのが今なので一つ前のバージョンである Sonoma へアップグレードすることにした。
*
ハードウェア構成は次のようになっている。
- マザーボード:Gigabyte H370 HD3
- CPU:Intel CPU Core i3-8100(第8世代、開発コード Coffee Lake-S)
- グラフィックカード:ASRock ビデオカード Radeon RX570搭載 3モード切替モデル PGX Radeon RX570 8G OC
- WIFI/BLUETOOTHアダプタ FENVI FV-T919
- 電源ユニット:玄人志向 KRPW-AK750W/88+
- メモリ:8GB(W4U2400CM-4G 4GBx2枚)、32GB(TEAM DDR4 2666Mhz PC4-21300 16GBx2枚)
現在の macOS は Ventura 13.5 (22G74) だ。
*
まず現在の Ventura の状態で OpenCore と kext を最新版にアップデートしておく。現在のハードウェア構成で最新の OpenCore と kext が動くことを確認したいからだ。もちろん Sonoma にアップグレードすることで動かなくなる可能性もあるが、現時点での最新の OpenCore と kext とハードウェアの相性を確認するためだ。
(0)BIOS の設定は以前のまま変えていない。そのまま進めていく。
[Hackintosh] OpenCore で Ventura を立てる(1) BIOS 設定
https://wacw.cf/2023/04/05/hackintosh-ventura-with-opencore-1/
(1)念のため Carbon Copy Cloner でシステムドライブをバックアップしておいた。
Carbon Copy Cloner | macOS Backup Software | Bombich Software
https://bombich.com/
(2)念のため ESP をバックアップする。
Kext Updater を使うと「EFI」ボタンをクリックするだけで EFI フォルダーをマウントできる。
Kext Updater – SL-Soft
https://www.sl-soft.de/en/kext-updater/
EFI フォルダーをそのまま別の場所にコピーしてバックアップすればいい。
(3)kext を最新版にアップデートする。
現在僕が使っている kext を以下のようにアップデートした。最新版に差し替えればいい。
- AppleALC.kext: 1.8.3 -> 1.9.1
- IntelMausi.kext: 1.0.7(アップデートなし)
- Lilu.kext: 1.6.6 -> 1.6.8
- VirtualSMC.kext: 1.3.2 -> 1.3.3
- WhateverGreen.kext: 1.6.5 -> 1.6.7
- USBPorts.kext(アップデートなし)
その際、Kext Updater を使うと簡単に最新版のチェックおよびダウンロードができる。
USBPorts.kext は自分で作成したものなのでアップデートはない。
[Hackintosh] USB ポート 15 個制限用の USBPorts.kext を作成する
https://wacw.cf/2023/04/07/usb-port-mapping-with-usbport-kext/
Mac を再起動して問題なく起動できることを確認した。
(4)3で Kext Updater を使うと最新版の OpenCore もダウンロードされる。僕は現在バージョン 0.9.2 の OpenCore を使っているが最新版は 1.0.1 だ。
参考:
Releases · acidanthera/OpenCorePkg
https://github.com/acidanthera/OpenCorePkg/releases
「デスクトップ>Kext-Updates>OpenCore>Docs>Sample.plist」が OpenCore の元になる設定ファイルだ。それを自分の環境に合わせて編集していく。
(4-1)Sample.plist を config.plist と名前を変更し、ProperTree アプリで開く。
参考:
[Hackintosh] ProperTree をインストールする – with a Christian Wife
https://wacw.cf/2023/03/28/propertree/
(4-2)#WARNING で始まる最初4行を削除する(「右クリック>Remove~」で)。
(4-3))「File>OC Clean Snapshot」をクリック。あらかじめ Kext Updater で EFI フォルダーをマウントしておき、「EFI>OC」を指定する。
これで config.plist の ACPI や driver、kext 関係が自動入力される。つまり ACPI や driver、kext フォルダーの中身を変更するたびに OC Clean Snapshot を実行すればいいということだ。
(4-4))「Root>Kernel>Add」で次のような順になるよう、項目をドラッグ・アンド・ドロップして変更する。つまり、kext 同士で依存関係がある場合、大もとのものを先に配置している。
- Lilu
- VirtualSMC
- IntelMausi
- USBPorts
- WhateverGreen
- AppleALC
(4-5)【「Root>ACPI」の項目】
変更しなくていい。
(4-6)【「Root>Booter>Quirks」の項目】
以下を変更する。
- DevirtualiseMmio: True に。
- FixupAppleEfiImages: False のままに。
- RebuildAppleMemoryMap: True に。
- SetupVirtualMap: True のままに。
- SyncRuntimePermissions: True に。
- ResizeAppleGpuBars: 0 に。(BIOS で Re-Size BAR Support を有効化したので。)
(4-7)以前 Audio device の Devide Path を調べて「PciRoot(0x0)/Pci(0x1F,0x3)」だった。
参考:
wacw blog | [Hackintosh] OpenCore で Ventura を立てる(2) EFI フォルダーを作成する
https://wacw.cf/2023/04/05/hackintosh-ventura-with-opencore-2/
(4-8)【DeviceProperties の項目(1)】
「Add」の項目が「PciRoot(0x0)/Pci(0x1b,0x0)」となっているので、(4-7)で分かった「PciRoot(0x0)/Pci(0x1F,0x3)」に値を変更する。
layout-id はあとで boot-arg で入力するので、そのままの値でいい。
(4-9)【DeviceProperties の項目(2)】
4-8 の「PciRoot(0x0)/Pci(0x1F,0x3)」と同じ階層に以下のような新しい項目を作成する。
- Key: PciRoot(0x0)/Pci(0x2,0x0)
- Type: Dictionary
さらに以下の子項目を作成する。
- Key: AAPL,ig-platform-id
- Type: Data
- Value: 00009B3E
(5)【Kernel の項目】
「Quirks」内の以下を設定した。
- AppleCpuPmCfgLock: False のままに(BIOS 側の設定で CFG Lock を無効化しているため)。
- AppleXcpmCfgLock: False のままに(BIOS 側の設定で CFG Lock を無効化しているため)。
- DisableIoMapper: False のままに(BIOS 側の設定で VT-d を無効化しているため)。
- DisableIoMapperMapping: False のままに。
- PanicNoKextDump: True に。
- PowerTimeoutKernelPanic: True に。
(6)【misc の項目】
「Boot」内に以下の設定をした。
- InstanceIdentifier: 空白のまま。
「Debug」内の以下を設定した。
- AppleDebug: True に。
- DisableWatchDog: True に。
- Target: 67 に。
「Security」内の以下を設定した。
- AllowSetDefault: True に。
- ExposeSensitiveData: 3 に。
- ScanPolicy: 19858179 に。
- Vault: Optional に。
「Tools」内に以下の設定をした。
- OpenShel.efi の項目の「Auxiliary」: true のままに。
(7)【NVRAM の項目】
「Add」内で以下を設定する。
- 「7C436110-AB2A-4BBB-A880-FE41995C9F82」内の # で始まる行を削除する。
- US キーボードを使っているので、「prev-lang:kbd」の Value を 656e2d55533a30 にする。
- 「7C436110-AB2A-4BBB-A880-FE41995C9F82」内の「boot-args」に debug=0x100 alcid=1 を追記する。alcid は layout-id であり、環境によって値を変える必要があるかもしれない。僕は1で大丈夫だった。
(8)【PlatformInfo の項目】
GenSMBIOS を使って、Serial、Board Serial、SmUUID を生成する。
GenSMBIOSを使って機種情報を設定する – Boot macOS
https://bootmacos.com/archives/9597
そのうえで「Generic」の項目を以下のように設定した。
- SystemProductName: iMac19,1
- SystemSerialNumber: GenSMBIOS で生成された Serial の値を入力。
- MLB: GenSMBIOS で生成された Board Serial の値を入力。
- SystemUUID: GenSMBIOS で生成された SmUUID の値を入力。
- ROM: GenSMBIOS で生成された Apple ROM の値を入力。しかし、再起動するとデフォルトの 112233445566 に戻ってしまうのはなぜだろう。
ただし、現時点で PlatformInfo を変えてしまうと、Apple ID からサインアウトしてしまう。別デバイスとして認識されてしまうからだ。単なるアップデートなので別デバイスとして認識されると困る。現時点では現在の PlatformInfo をそのまま入力しよう。このあと Sonoma のインストール段階になって新しい PlatformInfo を入力しよう。
(9)【UEFI の項目】
「Output」内で以下のように設定する。
- ConsoleFont: 空白のまま。
- InitialMode: Auto のまま。
- GopBurstMode: False のまま。
「ProtocolOverrides」内を以下のように設定する。
- Pcilo: False のまま。
「Quirks」内で以下のように設定する。
- ShimRetainProtocol: False のまま。
その他はデフォルトのままにしておいた。
(10)Kext Updater で「Tools>Select an OpenCore config.plist which you wan to check」で config.plist を指定すれば、記述のチェックができる。
(11)編集した config.plist と現在の EFI フォルダーの config.plist を差し替える。
(12)EFI フォルダーの efi を「デスクトップ>Kext-Updates>OpenCore>X64>EFI」に含まれる最新の efi と差し替える。
僕は以下を差し替えた。
- EFI>BOOT>BOOTx64.efi
- EFI>OC>OpenCore.efi
- EFI>OC>Drivers>OpenRuntime.efi
- EFI>OC>Tools>OpenShell.efi
EFI>OC>Drivers>HfsPlus.efi は Kext-Updates の自動ダウンロードに含まれないので以下のサイトでチェックしたが、更新されていないようなので差し替えは不要だ。
OcBinaryData/Drivers at master · acidanthera/OcBinaryData · GitHub
https://github.com/acidanthera/OcBinaryData/tree/master/Drivers
Mac を再起動して問題なく起動できることを確認した。
(13)最新の Ventura の状態でも問題なく OpenCore が動くことを確認したいので、Ventura のアップデートをする。
現在 Ventura 13.5 だが、「リンゴマーク>System Settings>Software Update Available」ですでに Sonoma 14.6.1 にアップデート通知も表示されているが、一番下の「Other Updates Available」から macOS Ventura 13.6.9 にアップデートできる。
再起動は3回あり、1回目は macOS Installer 、2回目と3回目はボリューム名が選択されていた。
アップデート後、問題なく起動できることを確認した。
以上で、Ventura において、OS および OpenCore や kext を最新版にアップデートした。
今気付いたが、以前は OpenCore にしてから Apple ID でサインインしたデバイス一覧が System Preference で表示されない不具合があったが直っていた。今回直ったのか以前に直ったのかは分からない。
[Hackintosh] OpenCore Venture のその後
https://wacw.cf/2023/04/20/15-days-after-installing-opencore-ventura/
また、Mac と iPad や iPhone とのクリップボードの共有がうまく動かなくなった。AirDrop は動作するのに。
(続く。)
参考:
[Hackintosh] OpenCore 0.9.0 から 0.9.2 にアップデート
https://wacw.cf/2023/06/12/updating-opencore-from-090-to-092/
OpenCore 0.9.2 から0.9.3に更新 – Boot macOS
https://bootmacos.com/archives/21257
OpenCore 0.9.3 から0.9.4に更新 – Boot macOS
https://bootmacos.com/archives/21381
OpenCore 0.9.4 から0.9.5に更新 – Boot macOS
https://bootmacos.com/archives/21448
OpenCore 0.9.5 から0.9.6に更新 – Boot macOS
https://bootmacos.com/archives/21715
SonomaのUSBインストーラを作ってクリーンインストール
https://bootmacos.com/archives/21470
OpenCoreのpicker画面を設定する
https://bootmacos.com/archives/11657