Обновление Hackintosh до macOS 10.14 Mojave

Обновление Hackintosh до macOS 10.14 Mojave

Приветствую на страницах Техноджема. Уже более года являюсь пользователем Хакинтоша. Свой путь пиратского мака, я начал с High Sierra. Как писал в прошлых статьях о маке, он выступил для меня unix альтернативой Винде, вобрав в себя стабильность и поддерживаемость многих популярных, нужных для работы приложений и исключив забагованность и слабую поддержку специализированного софта Linux дистров. В целом всё устраивало, хотя интерфейс, на моей встройке Intel HD 530, был несколько тормознутым если сравнивать с Windows или Linux дистрибутивами. С появлением macOS 10.14 Mojave, решил сразу же обновиться до новой версии. Далее расскажу, какие шаги предпринял для этого.

Конфигурация моей машины описанная в статье «Установка Mac OS High Sierra Hackintosh на GA b250 HD3» несколько изменилась, так как материнская плата к сожалению сгорела. В связи с тем, что я использовал машину в рабочих целях, то есть она была нужна мне срочно, на поиски редкой материнки с идеальной совместимостью у меня не было времени, и я купил в ближайшем «электромаге» мать на том же B250 чипсете — GA B250M Gaming 3. После замены системной платы, не пришлось править конфиги, всё взлетело как родное, единственное что не заработало так это гибернация, но что уже поделать, привык жить без неё.

Итак перед обновлением c High Sierra до MacOS 10.14 Mojave Hackintosh, мне потребовалось обновить до последней версии Clover.

Внимание: при обновлении кловера обратите внимание на настройки. Если ошибиться с настройками, то возможно ваша система не будет загружаться.

  • apfs.efi или ApfsDriverLoader.efi обязательно должен быть в EFI/CLOVER/drivers64UEFI.
  • FakeSMC.kext или VirtualSMC.kext+Lilu.kext в EFI/CLOVER/kexts/Other
  • apfs.efi не нужен ( нужно удалить) при использовании ApfsDriverLoader.efi, который загружает драйвер apfs из apfs контейнера.
  •  Требуется Lilu последней версии и последние версии плагинов. В моём случае я обновил Lilu.kext, AppleALC
  • Так же пришлось установить WhateverGreen.kext, без него графика не хотела взлетать
Обновление Hackintosh до macOS 10.14 Mojave

Обновлял простым скачиванием Mojave из App Store, после чего запустил установку. Перезагрузка происходила раза 3 и на всё обновление ушло чуть более часа.  У меня уже была файловая система APFS, поэтому не было конвертации. Поговаривают, что установить Mojave без APFS нельзя, и если у вас HFS+, то при обновлении происходит довольно длительный процесс конвертации файловой системы.

Выкладываю в ознакомительных целях свой config.plist, обращаю внимание что слепое копирование к себе не даст результата, необходимо ОБЯЗАТЕЛЬНО внести правки в раздел SMBIOS, так как я убрал свои серийные номера и UUID всякие, они должны быть уникальные:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>ACPI</key>
	<dict>
		<key>DSDT</key>
		<dict>
			<key>Fixes</key>
			<dict>
				<key>AddDTGP</key>
				<false/>
				<key>AddMCHC</key>
				<false/>
				<key>DeleteUnused</key>
				<true/>
				<key>FixDisplay</key>
				<false/>
				<key>FixHDA</key>
				<false/>
				<key>FixMutex</key>
				<true/>
				<key>FixRegions</key>
				<true/>
			</dict>
			<key>Name</key>
			<string>DSDT.aml</string>
			<key>Patches</key>
			<array>
				<dict>
					<key>Comment</key>
					<string>change GFX0 to IGPU</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					R0ZYMA==
					</data>
					<key>Replace</key>
					<data>
					SUdQVQ==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change HDAS to HDEF</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					SERBUw==
					</data>
					<key>Replace</key>
					<data>
					SERFRg==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change HECI to IMEI</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					SEVDSQ==
					</data>
					<key>Replace</key>
					<data>
					SU1FSQ==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change SAT0 to SATA</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					U0FUMA==
					</data>
					<key>Replace</key>
					<data>
					U0FUQQ==
					</data>
				</dict>
			</array>
		</dict>
		<key>DropTables</key>
		<array>
			<dict>
				<key>Signature</key>
				<string>DMAR</string>
			</dict>
		</array>
		<key>FixHeaders</key>
		<true/>
		<key>SSDT</key>
		<dict>
			<key>Generate</key>
			<dict>
				<key>CStates</key>
				<false/>
				<key>PStates</key>
				<false/>
			</dict>
		</dict>
		<key>smartUPS</key>
		<false/>
	</dict>
	<key>Boot</key>
	<dict>
		<key>Arguments</key>
		<string></string>
		<key>CustomLogo</key>
		<string>Theme</string>
		<key>DefaultLoader</key>
		<string>boot.efi</string>
		<key>DefaultVolume</key>
		<string>LastBootedVolume</string>
		<key>HibernationFixup</key>
		<false/>
		<key>Legacy</key>
		<string>PBR</string>
		<key>NeverDoRecovery</key>
		<true/>
		<key>NeverHibernate</key>
		<false/>
		<key>StrictHibernate</key>
		<true/>
		<key>Timeout</key>
		<integer>2</integer>
		<key>XMPDetection</key>
		<false/>
	</dict>
	<key>CPU</key>
	<dict>
		<key>BusSpeedkHz</key>
		<integer>100000</integer>
	</dict>
	<key>Devices</key>
	<dict>
		<key>Audio</key>
		<dict>
			<key>AFGLowPowerState</key>
			<true/>
			<key>Inject</key>
			<integer>1</integer>
			<key>ResetHDA</key>
			<false/>
		</dict>
		<key>USB</key>
		<dict>
			<key>AddClockID</key>
			<true/>
			<key>FixOwnership</key>
			<true/>
			<key>Inject</key>
			<true/>
		</dict>
		<key>UseIntelHDMI</key>
		<true/>
	</dict>
	<key>GUI</key>
	<dict>
		<key>Custom</key>
		<dict>
			<key>Entries</key>
			<array>
				<dict>
					<key>Disabled</key>
					<false/>
					<key>Ignore</key>
					<false/>
					<key>Path</key>
					<string>\EFI\Manjaro\grubx64.efi</string>
					<key>Title</key>
					<string>Manjaro Linux</string>
					<key>Type</key>
					<string>All</string>
					<key>VolumeType</key>
					<string>Internal</string>
				</dict>
			</array>
		</dict>
		<key>Hide</key>
		<array>
			<string>Preboot</string>
		</array>
		<key>Mouse</key>
		<dict>
			<key>Enabled</key>
			<true/>
		</dict>
		<key>ScreenResolution</key>
		<string>1920x1080</string>
		<key>Theme</key>
		<string>BeautyDark</string>
	</dict>
	<key>Graphics</key>
	<dict>
		<key>Inject</key>
		<dict>
			<key>Intel</key>
			<false/>
		</dict>
	</dict>
	<key>KernelAndKextPatches</key>
	<dict>
		<key>AppleRTC</key>
		<true/>
		<key>FakeCPUID</key>
		<string>0x0506E3</string>
		<key>KernelPm</key>
		<true/>
		<key>KernelXCPM</key>
		<false/>
		<key>KextsToPatch</key>
		<array>
			<dict>
				<key>Comment</key>
				<string>change 15 port limit</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				g32MEA==
				</data>
				<key>InfoPlistPatch</key>
				<false/>
				<key>MatchOS</key>
				<string>10.13.x</string>
				<key>Name</key>
				<string>com.apple.driver.usb.AppleUSBXHCIPCI</string>
				<key>Replace</key>
				<data>
				g32Mfw==
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>change 15 port limit</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				g710////EA==
				</data>
				<key>InfoPlistPatch</key>
				<false/>
				<key>MatchOS</key>
				<string>10.12.x</string>
				<key>Name</key>
				<string>com.apple.driver.usb.AppleUSBXHCIPCI</string>
				<key>Replace</key>
				<data>
				g710////Gw==
				</data>
			</dict>
		</array>
	</dict>
	<key>SMBIOS</key>
	<dict>
		<key>BiosReleaseDate</key>
		<string>02/08/2018</string>
		<key>BiosVendor</key>
		<string>Apple Inc.</string>
		<key>BiosVersion</key>
		<string>Вставить свой</string>
		<key>Board-ID</key>
		<string>Вставить свой</string>
		<key>BoardManufacturer</key>
		<string>Apple Inc.</string>
		<key>BoardSerialNumber</key>
		<string>Вставить свой</string>
		<key>BoardType</key>
		<integer>10</integer>
		<key>BoardVersion</key>
		<string>1.0</string>
		<key>ChassisAssetTag</key>
		<string>iMac-Aluminum</string>
		<key>ChassisManufacturer</key>
		<string>Apple Inc.</string>
		<key>ChassisType</key>
		<string>0x09</string>
		<key>Family</key>
		<string>iMac17,1</string>
		<key>FirmwareFeatures</key>
		<string>Вставить свой</string>
		<key>FirmwareFeaturesMask</key>
		<string>Вставить свой</string>
		<key>LocationInChassis</key>
		<string>Part Component</string>
		<key>Manufacturer</key>
		<string>Apple Inc.</string>
		<key>Mobile</key>
		<false/>
		<key>PlatformFeature</key>
		<string>0x00</string>
		<key>ProductName</key>
		<string>iMac17,1</string>
		<key>SerialNumber</key>
		<string>Вставить свой</string>
		<key>Version</key>
		<string>1.0</string>
	</dict>
	<key>SystemParameters</key>
	<dict>
		<key>InjectKexts</key>
		<string>Yes</string>
		<key>InjectSystemID</key>
		<true/>
	</dict>
</dict>
</plist>

Сейчас уже прилетело обновление до Mac OS Mojave Hackintosh до 10.14.1 (18B75), в целом системой доволен, новые баги не появились, а интерфейс стал на порядок более отзывчивым.