Как создать config plist на windows для хакинтош

Во многих инструкциях о том как установить свой первый Хакинтош почему-то упускают один главный и важный шаг - создание файла config.plist. Исправляем данную ситуацию.

Во многих инструкциях о том как установить свой первый Хакинтош почему-то упускают один главный и важный шаг — создание файла plist.config. Исправляем данную ситуацию.

Ранее мы рассказывали что необходимо, чтобы установить хакинтош:

  1. Выбор железа для Хакинтош
  2. Скачивание образа macOS
  3. Настройка BIOS / UEFI
  4. Значение аргументов (ключей) загрузки
  5. Создание загрузочной флешки
    • С помощью терминала
    • В Windows с помощью (BDU) Boot Disk Utility
    • С помощью UniBeast в macOS
  6. Скачать kext для Хакинтош
  7. Куда и как установить Kext для Хакинтош?
  8. Какие драйверы устанавливать в drivers64UEFI
  9. Создание config.plist для установки Хакинтош <
  10. Установка Хакинтош
  11. Установить загрузчик Clover на системный диск
  12. Установка драйвера Nvidia Web Driver
  13. Как завести звук на Хакинтош?
  14. Как завести USB?
  15. Изменить таймер запуска Хакинтош
  16. Включить ускорение Intel Quick Sync Video на Хакинтош
  17. Как перенести файлы с Mac в Windows
  18. Не удается установить программы, срабатывает защита
  19. Настройка Windows клавиатуры в Mac
  20. USB Bluetooth адаптер «отваливается»
  21. Сбивается время в Windows

Не понятно почему, но большинство сайтов просто забывают рассказать пользователям которые пытаются установить свой первый Хакинтош о таком файле как config.plist.

Данный файл отвечает за то чтобы система стартовала и работала, не возникали баги и вносить различные фиксы.

Это довольно тяжёлый этап, для того чтобы начать установку Хакинтоша, так как в зависимости от железа нужно вносить свои правки, а так как у всех компьютеры разные, настройка config.plist становиться индивидуальной. Но все же я попытаюсь рассказать основную информацию, а далее вам стоит попытаться свой личный config.plist и если пойдет все хорошо установить систему, либо же попросить на профильном форуме, чтобы вам помогли до настроить файл конфигурации.

Предыдущий шаг: скачивание драйверов UEFI

Может быть и есть люди, которые создали  полностью рабочий вариант config.plist в Windows, но сделать это будет очень трудно, либо с помощью web-инструмента. Поэтому создавать данный файл будем в виртуальной машине macOS. О том как их создать читайте в наших прошлых статьях:

  • Установка macOS Virtualbox
  • Установка macOS VmWare

Как по мне проще и легче установить в VmWare…

Теперь же необходим инструмент с помощью которого будет мастерить config.plist — скачиваем Clover Configurator и запускаем его.

 Настройка config.plist для установки в Clover Configurator

Переходим сразу же на вкладку под названием «SMBIOS».Создание config.plist для установки Хакинтош В этой вкладке вам необходимо подобрать максимально похожий Mac.Создание config.plist для установки Хакинтош Для этого необходимо знать какой процессор установлен на вашем компьютере и близок к тому, что установлен в настоящем iMac или MacBook, MacPro.

Создание plist.config для установки ХакинтошПочти половина дела сделано, переходим во вкладку «System Parameters».

В выпадающем списке Inject Kexts выбираем «Yes» и ставим галочку напротив «Inject System ID». Это необходимо чтобы kext-ы которые мы приготовили, были загружены.Создание plist.config для установки Хакинтош

Переходим во вкладку «ACPI». Здесь вам необходимо включить различные Fix (как минимум те что указаны на скриншоте), так как в противном случае может возникнуть паника ядра и система «упадет», а может и нет. Об этом вы узнаете путем личных экспериментов.Создание и настройка config.plist для установки Хакинтош

Если у вас процессор Haswell, то рекомендуется поставить «1» напротив Plugin Type

Создание plist.config для установки Хакинтош

Переходим во вкладку «Boot». Ставим как минимум одну галочку напротив -v и устанавливаем таймаут.Создание plist.config для установки Хакинтош

Возможно необходимо будет указать и другие ключи, но об этом вы узнаете позже сами экспериментальным путем.

Переходим во вкладку «Devices» и ставим все галочки USB, кроме последнего пункта.Создание plist.config для установки Хакинтош

Теперь на панели выбираем «Files» — «Save», чтобы сохранить созданный только что файл config.plist. Создание config.plist для установки Хакинтош

Еще раз напомню, что минимум необходимых настроек которые необходимо внести в config.plist и возможно его вам необходимо дорабатывать под себя!

Готовые config.plist для разных поколений процессоров

Если вам лень или настройка конфига вам слишком сложна по первой, то лучше воспользоваться, универсальными файлами config.plist, составленными для определенных поколений CPU:

  • Ivy Bridge
  • Haswell
  • Skylake
  • Kaby Lake
  • Coffee Lake

Они еще требуют доработки, но более или менее подходят многим.

Далее файл config.plist необходимо переместить на загрузочную флешку, раздел EFI, папка Clover.Создание plist.config для установки Хакинтош

В следующей статье я расскажу вам как установить macOS (Hackintosh) на компьютер.

Следующий шаг: Значение аргументов при загрузке Хакинтош

У вас еще остались дополнительные вопросы? Задавайте их в комментариях, рассказывайте о том, что у вас получилось или наоборот!

Вот и все! Оставайтесь вместе с сайтом Android +1, дальше будет еще интересней! Больше статей и инструкций читайте в разделе Статьи и Хаки Android.

Теперь, когда у нас есть все наши кексты(.kext), SSDT(.aml) и драйверы прошивки, ваш USB должен выглядеть примерно так:

Populated EFI folder

  • Примечание: Ваш USB будет выглядеть по-другому, у каждой системы разные требования.

# Создание вашего config.plist

Для начала, нам нужно взять sample.plist из OpenCorePkg (opens new window), он будет находится в папке Docs:

Дальше, давайте переместим его на EFI раздел USB(будет называться BOOT в Windows) в EFI/OC/, и переименуем его в config.plist:

# Добавление ваших SSDT, кекстов и драйверов прошивки

Для остальной части этого руководства, вам нужно будет как-то редактировать plist. И в нашем руководстве мы будем использовать ProperTree и GenSMBIOS, чтобы помочь автоматизировать часть утомительной работы:

  • ProperTree (opens new window)
    • Универсальный plist редактор
  • GenSMBIOS (opens new window)
    • Для генерации наших SMBIOS данных

Далее, давайте откроем ProperTree и отредактируем наш config.plist:

  • ProperTree.command
    • Для macOS
    • Подсказка: есть утилита buildapp.command в папке Scripts, которая превратит ProperTree в отдельное приложение для macOS
  • ProperTree.bat
    • Для Windows

Когда запустите ProperTree, откройте ваш config.plist нажатием Cmd/Ctrl + O и выберите файл config.plist на вашем USB.

После того как открыли конфиг, нажмите Cmd/Ctrl + Shift + R и выберите вашу EFI/OC папку, чтобы совершить «Clean Snapshot»:

  • Это удалит все записи из config.plist и затем добавит все ваши SSDT, кексты и драйверы прошивки в конфиг
  • Cmd/Ctrl + R это другая опция, которая добавит все ваши файлы, но оставит записи отключенными, если они были настроены таким образом раньше, полезно при решении проблем, но нам сейчас не нужно

Когда всё сделано, вы увидите ваши SSDT, кексты и драйверы прошивки заполненными в config.plist:

  • Примечание: Если у вас появится окно «Disable the following kexts with Duplicate CFBundleIdentifiers?», нажмите «Yes». Это делается для того, чтобы убедиться, что у вас не будут инжектироваться дублирующиеся кексты, поскольку некоторые кексты могут иметь одни и те же плагины(например, VoodooInput находящийся как в VoodooPS2, так и в VoodooI2C)

Если вы хотите немного почистить файл, вы можете удалить записи #WARNING. Хотя они оставаясь там не вызывают проблем, поэтому это личное предпочтение.

# Выбор вашей платформы

Теперь наступает важная часть — выбор пути конфигурации. У каждой платформы есть свои уникальные особенности, которые вам необходимо учитывать, поэтому очень важно знать свое оборудование. Смотрите ниже, что делать дальше:

# Настольные Intel

  • Примечание: Серия Intel NUC считается мобильным оборудованием, для этих ситуаций мы рекомендуем следовать разделу Intel ноутбуки
Кодовое название Серия Выход
Yonah, Conroe и Penryn E8XXX, Q9XXX, etc 1 (opens new window), etc 2 (opens new window) 2006-2009 г.
Lynnfield и Clarkdale 5XX-8XX 2010 г.
Sandy Bridge 2XXX 2011 г.
Ivy Bridge 3XXX 2012 г.
Haswell 4XXX 2013-2014 г.
Skylake 6XXX 2015-2016 г.
Kaby Lake 7XXX 2017 г.
Coffee Lake 8XXX-9XXX 2017-2019 г.
Comet Lake 10XXX 2020 г.

# Ноутбуки Intel

Кодовое название Серия Выход
Clarksfield и Arrandale 3XX-9XX 2010 г.
Sandy Bridge 2XXX 2011 г.
Ivy Bridge 3XXX 2012 г.
Haswell 4XXX 2013-2014 г.
Broadwell 5XXX 2014-2015 г.
Skylake 6XXX 2015-2016 г.
Kaby Lake и Amber Lake 7XXX 2017 г.
Coffee Lake и Whiskey Lake 8XXX 2017-2018 г.
Coffee Lake Plus и Comet Lake 9XXX-10XXX 2019-2020 г.
Ice Lake 10XXX 2019-2020 г.

# Intel HEDT

Этот раздел включает оборудование как для энтузиастов, так и серверное.

Кодовое название Серия Выход
Nehalem и Westmere 9XX, X3XXX, X5XXX, etc 1 (opens new window), 2 (opens new window) 2008-2010 г.
Sandy/Ivy Bridge-E 3XXX, 4XXX 2011-2013 г.
Haswell-E 5XXX 2014 г.
Broadwell-E 6XXX 2016 г.
Skylake/Cascade Lake-X/W 7XXX, 9XXX, 10XXX 2017-2019 г.

# AMD

Кодовое название Серия Выход
Bulldozer/Jaguar Непонятно (opens new window) AMD реально были плохи в названиях раньше (opens new window)
Zen 1XXX, 2XXX, 3XXX, 5XXX 2017-2020 г.
  • Примечание: Threadripper 3его поколения(39XX) не поддерживаются, однако 1ое и 2ое поколение поддерживается
    • Последние версии BIOS и OpenCore решили эту проблему, теперь поддерживаются все платформы на Threadripper

Последнее обновление: 3 месяца назад

config.plist Setup

Now that we’ve got all our Kexts(.kext), SSDTs(.aml) and firmware drivers(.efi), your USB should start to look something like this:

Populated EFI folder

  • Note: Your USB will look different, everyone’s system will have different requirements.

Creating your config.plist

First we’ll want to grab the Sample.plist from the OpenCorePkg, this will be located under the Docs folder:

Next lets move it onto our USB’s EFI partition(will be called BOOT on Windows) under EFI/OC/, and rename it to config.plist:

Adding your SSDTs, Kexts and Firmware Drivers

For the rest of this guide, you’re gonna need some form of plist editing. And for our guide, we’ll be using ProperTree and GenSMBIOS to help automate some of the tedious work:

  • ProperTree
    • Universal plist editor
  • GenSMBIOS
    • For generating our SMBIOS data

Next, let’s open ProperTree and edit our config.plist:

  • ProperTree.command
    • For macOS
    • Pro tip: there’s a buildapp.command utility in the Scripts folder that lets you turn ProperTree into a dedicated app in macOS
  • ProperTree.bat
    • For Windows

Once ProperTree is running, open your config.plist by pressing Cmd/Ctrl + O and selecting the config.plist file on your USB.

After the config is opened, press Cmd/Ctrl + Shift + R and point it at your EFI/OC folder to perform a «Clean Snapshot»:

  • This will remove all the entries from the config.plist and then adds all your SSDTs, Kexts and Firmware drivers to the config
  • Cmd/Ctrl + R is another option that will add all your files as well but will leave entries disabled if they were set like that before, useful for when you’re troubleshooting but for us not needed right now

Once done, you’ll see your SSDTs, Kexts and firmware drivers populated in the config.plist:

  • Note: If you get a pop up «Disable the following kexts with Duplicate CFBundleIdentifiers?», press «Yes». This is to ensure you don’t have duplicate kexts being injected, as some kexts may have some of the same plugins(ie. VoodooInput is in both VoodooPS2 and VoodooI2C’s plugin folder)

If you wish to clean up the file a bit, you can remove the #WARNING entries. Though they cause no issues staying there, so up to personal preference.

::: danger
The config.plist must match the contents of the EFI folder. If you delete a file but leave it listed in the Config.plist, OpenCore will error and stop booting.

If you make any modifications, you can use the OC snapshot tool (Cmd/Ctrl + R) in ProperTree to update the config.plist.
:::

Selecting your platform

Now comes the important part, selecting the configuration path. Each platform has their own unique quirks that you need to account for so knowing your hardware is super important. See below for what to follow:

Intel Desktop

  • Note: Intel’s NUC series are considered mobile hardware, for these situations we recommend following the Intel Laptop Section
Code Name Series Release
Yonah, Conroe and Penryn E8XXX, Q9XXX, etc 1, etc 2 2006-2009 era
Lynnfield and Clarkdale 5XX-8XX 2010 era
Sandy Bridge 2XXX 2011 era
Ivy Bridge 3XXX 2012 era
Haswell 4XXX 2013-2014 era
Skylake 6XXX 2015-2016 era
Kaby Lake 7XXX 2017 era
Coffee Lake 8XXX-9XXX 2017-2019 era
Comet Lake 10XXX 2020 era

Intel Laptop

Code Name Series Release
Clarksfield and Arrandale 3XX-9XX 2010 era
Sandy Bridge 2XXX 2011 era
Ivy Bridge 3XXX 2012 era
Haswell 4XXX 2013-2014 era
Broadwell 5XXX 2014-2015 era
Skylake 6XXX 2015-2016 era
Kaby Lake and Amber Lake 7XXX 2017 era
Coffee Lake and Whiskey Lake 8XXX 2017-2018 era
Coffee Lake Plus and Comet Lake 9XXX-10XXX 2019-2020 era
Ice Lake 10XXX 2019-2020 era

Intel HEDT

This section includes both enthusiast and server based hardware.

Code Name Series Release
Nehalem and Westmere 9XX, X3XXX, X5XXX, etc 1, 2 2008-2010 era
Sandy/Ivy Bridge-E 3XXX, 4XXX 2011-2013 era
Haswell-E 5XXX 2014 era
Broadwell-E 6XXX 2016 era
Skylake/Cascade Lake-X/W 7XXX, 9XXX, 10XXX 2017-2019 era

AMD

Code Name Series Release
Bulldozer/Jaguar It’s weird AMD was really bad with naming back then
Zen 1XXX, 2XXX, 3XXX, 5XXX 2017-2020 era
  • Note: Threadripper 3rd gen(39XX) are not supported, 1st and 2nd gen however are supported
    • Latest BIOS and OpenCore version has resolved this issue, all Threadripper platforms are now supported

Содержание

  1. # Настройка config.plist
  2. # Создание вашего config.plist
  3. # Добавление ваших SSDT, кекстов и драйверов прошивки
  4. # Выбор вашей платформы
  5. # Настольные Intel
  6. # Ноутбуки Intel
  7. # Intel HEDT
  8. # config.plist Setup
  9. # Creating your config.plist
  10. # Adding your SSDTs, Kexts and Firmware Drivers
  11. # Selecting your platform
  12. # Intel Desktop
  13. # Intel Laptop
  14. # Intel HEDT
  15. Создание и настройка config.plist для установки Хакинтош
  16. Создание plist.config для установки Хакинтош
  17. Настройка config.plist для установки в Clover Configurator
  18. Готовые config.plist для разных поколений процессоров
  19. Полезный SOFT Хакинтошника
  20. Clover configurator
  21. PlistEdit Pro
  22. Загрузчик Clover EFI Bootloader
  23. EFI Mounter-v2.app
  24. Yosemite Disk Utility для El Capitan
  25. Config plist редактировать в windows
  26. About

# Настройка config.plist

Теперь, когда у нас есть все наши кексты(.kext), SSDT(.aml) и драйверы прошивки, ваш USB должен выглядеть примерно так:

populated efi.8d46cc52

# Создание вашего config.plist

Для начала, нам нужно взять sample.plist из OpenCorePkg

sample location.f9079cbf

renamed.9b06868d

# Добавление ваших SSDT, кекстов и драйверов прошивки

Для остальной части этого руководства, вам нужно будет как-то редактировать plist. И в нашем руководстве мы будем использовать ProperTree и GenSMBIOS, чтобы помочь автоматизировать часть утомительной работы:

Далее, давайте откроем ProperTree и отредактируем наш config.plist:

Когда запустите ProperTree, откройте ваш config.plist нажатием Cmd/Ctrl + O и выберите файл config.plist на вашем USB.

После того как открыли конфиг, нажмите Cmd/Ctrl + Shift + R и выберите вашу EFI/OC папку, чтобы совершить «Clean Snapshot»:

before snapshot.f2dccade

Когда всё сделано, вы увидите ваши SSDT, кексты и драйверы прошивки заполненными в config.plist:

after snapshot.0dfaaf2b

duplicate.b628676a

# Выбор вашей платформы

# Настольные Intel

(opens new window) 2006-2009 г. Lynnfield и Clarkdale 5XX-8XX 2010 г. Sandy Bridge 2XXX 2011 г. Ivy Bridge 3XXX 2012 г. Haswell 4XXX 2013-2014 г. Skylake 6XXX 2015-2016 г. Kaby Lake 7XXX 2017 г. Coffee Lake 8XXX-9XXX 2017-2019 г. Comet Lake 10XXX 2020 г.

# Ноутбуки Intel

Кодовое название Серия Выход
Clarksfield и Arrandale 3XX-9XX 2010 г.
Sandy Bridge 2XXX 2011 г.
Ivy Bridge 3XXX 2012 г.
Haswell 4XXX 2013-2014 г.
Broadwell 5XXX 2014-2015 г.
Skylake 6XXX 2015-2016 г.
Kaby Lake и Amber Lake 7XXX 2017 г.
Coffee Lake и Whiskey Lake 8XXX 2017-2018 г.
Coffee Lake Plus и Comet Lake 9XXX-10XXX 2019-2020 г.
Ice Lake 10XXX 2019-2020 г.

# Intel HEDT

Этот раздел включает оборудование как для энтузиастов, так и серверное.

Источник

# config.plist Setup

Now that we’ve got all our Kexts(.kext), SSDTs(.aml) and firmware drivers(.efi), your USB should start to look something like this:

populated efi.8d46cc52

# Creating your config.plist

First we’ll want to grab the sample.plist from the OpenCorePkg

sample location.f9079cbf

renamed.9b06868d

# Adding your SSDTs, Kexts and Firmware Drivers

For the rest of this guide, you’re gonna need some form of plist editing. And for our guide, we’ll be using ProperTree and GenSMBIOS to help automate some of the tedious work:

Next, let’s open ProperTree and edit our config.plist:

Once ProperTree is running, open your config.plist by pressing Cmd/Ctrl + O and selecting the config.plist file on your USB.

After the config is opened, press Cmd/Ctrl + Shift + R and point it at your EFI/OC folder to perform a «Clean Snapshot»:

before snapshot.f2dccade

Once done, you’ll see your SSDTs, Kexts and firmware drivers populated in the config.plist:

after snapshot.0dfaaf2b

duplicate.b628676a

If you wish to clean up the file a bit, you can remove the #WARNING entries. Though they cause no issues staying there, so up to personal preference.

# Selecting your platform

Now comes the important part, selecting the configuration path. Each platform has their own unique quirks that you need to account for so knowing your hardware is super important. See below for what to follow:

# Intel Desktop

(opens new window) 2006-2009 era Lynnfield and Clarkdale 5XX-8XX 2010 era Sandy Bridge 2XXX 2011 era Ivy Bridge 3XXX 2012 era Haswell 4XXX 2013-2014 era Skylake 6XXX 2015-2016 era Kaby Lake 7XXX 2017 era Coffee Lake 8XXX-9XXX 2017-2019 era Comet Lake 10XXX 2020 era

# Intel Laptop

Code Name Series Release
Clarksfield and Arrandale 3XX-9XX 2010 era
Sandy Bridge 2XXX 2011 era
Ivy Bridge 3XXX 2012 era
Haswell 4XXX 2013-2014 era
Broadwell 5XXX 2014-2015 era
Skylake 6XXX 2015-2016 era
Kaby Lake and Amber Lake 7XXX 2017 era
Coffee Lake and Whiskey Lake 8XXX 2017-2018 era
Coffee Lake Plus and Comet Lake 9XXX-10XXX 2019-2020 era
Ice Lake 10XXX 2019-2020 era

# Intel HEDT

This section includes both enthusiast and server based hardware.

Источник

Создание и настройка config.plist для установки Хакинтош

Во многих инструкциях о том как установить свой первый Хакинтош почему-то упускают один главный и важный шаг — создание файла plist.config. Исправляем данную ситуацию.

Ранее мы рассказывали что необходимо, чтобы установить хакинтош:

Создание plist.config для установки Хакинтош

Может быть и есть люди, которые создали полностью рабочий вариант config.plist в Windows, но сделать это будет очень трудно, либо с помощью web-инструмента. Поэтому создавать данный файл будем в виртуальной машине macOS. О том как их создать читайте в наших прошлых статьях:

Как по мне проще и легче установить в VmWare…

Теперь же необходим инструмент с помощью которого будет мастерить config.plist — скачиваем Clover Configurator и запускаем его.

Настройка config.plist для установки в Clover Configurator

Переходим сразу же на вкладку под названием «SMBIOS». В этой вкладке вам необходимо подобрать максимально похожий Mac. Для этого необходимо знать какой процессор установлен на вашем компьютере и близок к тому, что установлен в настоящем iMac или MacBook, MacPro.

Почти половина дела сделано, переходим во вкладку «System Parameters».

В выпадающем списке Inject Kexts выбираем «Yes» и ставим галочку напротив «Inject System ID». Это необходимо чтобы kext-ы которые мы приготовили, были загружены.

Переходим во вкладку «ACPI». Здесь вам необходимо включить различные Fix (как минимум те что указаны на скриншоте), так как в противном случае может возникнуть паника ядра и система «упадет», а может и нет. Об этом вы узнаете путем личных экспериментов.

Если у вас процессор Haswell, то рекомендуется поставить «1» напротив Plugin Type

Возможно необходимо будет указать и другие ключи, но об этом вы узнаете позже сами экспериментальным путем.

Переходим во вкладку «Devices» и ставим все галочки USB, кроме последнего пункта.

Теперь на панели выбираем «Files» — «Save», чтобы сохранить созданный только что файл config.plist.

Еще раз напомню, что минимум необходимых настроек которые необходимо внести в config.plist и возможно его вам необходимо дорабатывать под себя!

Готовые config.plist для разных поколений процессоров

Если вам лень или настройка конфига вам слишком сложна по первой, то лучше воспользоваться, универсальными файлами config.plist, составленными для определенных поколений CPU:

Они еще требуют доработки, но более или менее подходят многим.

Далее файл config.plist необходимо переместить на загрузочную флешку, раздел EFI, папка Clover.

В следующей статье я расскажу вам как установить macOS (Hackintosh) на компьютер.

У вас еще остались дополнительные вопросы? Задавайте их в комментариях, рассказывайте о том, что у вас получилось или наоборот!

Вот и все! Оставайтесь вместе с сайтом Android +1, дальше будет еще интересней! Больше статей и инструкций читайте в разделе Статьи и Хаки Android.

Источник

Полезный SOFT Хакинтошника

Clover configurator

Программа очень сильно облегчающая настройку конфигурационного файла config.plist для загрузчика Clover. В ней каждый сможет внести изменения в файл, даже не имея за плечами серьезных навыков.

Также в программе предусмотрена функция монтирования и размонтирования EFI разделов, что очень удобно.

Но все же стоит иметь в виду, что не верно поставленная галочка в настройках может вызвать панику при загрузке Хакинтоша, так же возможны некоторые ошибки в самом config.plist после редактирования.

screenshot 2022 09 22 at 17 58 46 uskorenie sajtov na wordpress

PlistEdit Pro

4b05481a0f3c41977b40441bcdd5971ePlistEdit Pro — продвинутый редактор для файлов настроек plist. С PlistEdit Pro, пользователи могут легко изменять эти файлы и оказывать более полный контроль над своими системами. Вы можете использовать PlistEdit Pro в ваших разработках, а также использовать встроенный файловый браузер, который позволяет исследовать и изменять настройки параметров системы.

Так же с помощью данного редактора редактируют config.plist для загрузчика Clover EFI, но редактирование в нем потребует от пользователя уже более продвинутых познаний.

Покупаем лицензию, либо ищем на просторах инета бесплатно…

Загрузчик Clover EFI Bootloader

cropped i 10

По сути это он из инструментов, который и позволяет нам устанавливать, загружать, а в последствии и работать в операционной системе Mac OS на PC компьютерах.

Инсталятор загрузчика уже имеет ряд драйверов, которые делают загрузку возможным. Но все же после установки, пользователю прийдется приложить усилия для настройки config.plist и дополнением его файлов требуемыми кекстами.

Для установки рекомендуется использовать самую новую версию загрузчика, но по некоторым сведениям последние версии уже не поддерживают версии Mac OS ниже 10.10, поэтому перед выбором версии ознакомьтесь с этой статьей.

Инструкция по настройке Clover — «Клевер цвета Хаки 4000»

EFI Mounter-v2.app

yeEOyTPVXgU e1508012012702EFI Mounter-v2.app — программа для монтирования и размонтирования EFI разделов. Программа позволяет выбрать жесткий диск на котором расположен нужный вам раздел EFI, очень проста в использовании…

Yosemite Disk Utility для El Capitan

Snimok yekrana 2015 12 01 v 16.11.09Начиная с версии системы Mac OS X El Capitan, разработчиками компании Apple дисковая утилита была максимально упрощена.

Yosemite Disk Utility для El Capitan позволяет пользоваться старой дисковой утилитой, которая была в более ранних версиях Mac OS X и обладала рядом преимуществ перед нынешней урезанной версией, таких как:

К сожалению, пока нет аналогов для MacOS Sierra 10.12…

Источник

Config plist редактировать в windows

CCP

Clover Configurator Pro Download here

A full configurator for Clover V2 bootloader. Made with latest Swift 5, has its own parser (each entry will remains sorted as you leave it before closing the file). All the code comes from me, with the only exception of the handy Sparkle.framenwork to keep the app up-to date (and off course Clover), so that giving credit is pretty easy unlike my competitors that have the bad habit of silently include third party software in their application w/o mention them (use class-dump and take a look). Run in macOS 10.11 +

p.s. (I use «competitors» word here to underline what I think my «competitors» think of me, but this app doesn’t even have a donate button)

Why this name? Ok, «Clover» is an opensource bootloader, whould say also that my name is among the Clover’s credit (at boot time push the info button) because I wrote the MatchOS set of functions (and other minor things here and there in the build system), unlike my competitors. «Configurator» is a common word, «Pro» stand for «Professional» since this is a real Plist Editor like Xcode has or any other commercial app. but this is totally free!

I forgot something? where are their Copyright notice?? some infrigment? Ok understood, same story! )

App icon by Mirone.

Clover Configurator Pro is a professional Plist editor and is totally free! True, but what if you don’t want all the Clover facilities to show up? go to the Preferences and mark as active the following: beplisteditoronly

from now on, Clover Configurator Pro is only a Plist Editor!

Editing the config.plist

Clover Configurator Pro can automatically load the config.plist used to boot the OS automatically, just ensure this option is enabled in the Preferences: trytoloadconfig

What if you want to load another one? Simple, open the «Clover Manager» under the «View» menu: selectConfig

right click on the desired disk and choose one (boot partition is green colored on dark appearance, red otherwise). The partition must be mounted. Or if the file is elsewhere just drag it to the applications icon, or right clik on the file you want to open.

How to edit something for Clover? Well, that is the easy part, just right click with the mouse over any entry of the config.plist:

if a key does not yet exist or your is a new empty document just right click on the root rightclickroot

Depending on what’s on your Preferences, you have two way:

/src by default) and mark as active the relative option in the Preferences.

Open the «Clover Manager» under the «View» menu:

CloverInstaller1

CloverInstaller2

Clover is out of date?

Clover Configurator Pro keeps Build_Clover.command always up to date and you can use it to download and build always the latest Clover revision available. To do that take a look at the «Build_Clover» menu. Mind that Xcode must be installed and its clt selected.

Wants some info about your disks or partitions?

The Clover Manager is expandable:

all the info you wants are there. You can also apply filters for slices (partitions), mounted or ESPs if you have more than one.

Under the view menu you will find confortable having a text to data encoder/decoder, a hex to base64 encoder/decoder The boot-log viewer and the NVRAM editor The NVRAM editor is cool and can help you editing or understand your NVRAM in a clear way.

Clover Configurator Pro has a Dark appearance?

Did not like it? Go to the Preferences and disable «Start in dark mode. Applied on next run.», restart the app, and everything will be different:

vibrantLight

Clover Configurator Pro is multi language : actually Italian and English are available at 100%, Portoguese is at 90% (thanks to Mirone), but you can translate it easily by making a copy of Base.strings into your locale identifier suggested directly by Clover Configurator Pro in the upper right corner of the Preferences: localeid

You can find localization files at this dedicated repository here, Fork it edit the file, or as I said make a new one naming it as CCP suggested you. Open a pull request at the CCP-Locale-Bundle repository with the translated file, so that We can keep track of changes

adding more functionalities after a good debugging.

For any possible bug open an issue here on github, I’ll be happy to solve it

About

A free Plist Editor with some optional facilities for Clover UEFI boot loader

Источник

Config.plist Basics

The config.plist resides at /Volumes/EFI/EFI/CLOVER/config.plist and is one of the tougher files to work with for those new to the Hackintosh world. We’ll go into some of the basics of the structure here, then break out into different sections for different hardware config setup.

What Is It?

The config.plist is an XML property list. XML is a markup language that shares a lot of similarities with HTML. This means you’ve got a few different data types available to you, and most of the structure revolves around keeping track of opening and closing tags.

The Structure

When Clover explores a config.plist it expects to have certain parts in certain spots. The order and scope of your config are very important as putting information in the wrong spot can effectively hide it from Clover. You can view the general layout that Clover expects on the Clover Wiki.

Data Types

There are a few major data types we’ll run into when working with the config. I’ll outline the most common here. Note — I’m only using the opening tags here, when actually working with the following types we’ll need to make sure we clean up after ourselves and close our tags.

Strings

<string>This is a string</string>

Strings are just text. Not terribly crazy — you will see them used a lot for comments and other such things.

Integers

<integer>1</integer>

These are just whole numbers. Again, nothing too wild here.

Data

<data>RXh0ZXJuYWw=</data>

While this looks similar to the strings above, it’s actually the base64 representation of some data. Wtf does that mean? You can read up on it here, but in summation — it’s a slick way to save binary data in a text format without it getting lost when copied, moved, etc. What’s even more crazy is that you can take the above base64 data and convert it to ASCII via the following in Terminal.app:

echo RXh0ZXJuYWw= | python -m base64 -d && echo

This will output External on the next line. We use the && echo to output a newline after our text is spit out — this makes it easier to read.

You can also convert from ASCII to base64 (handy for working with ACPI renames — more about that later) with the following in Terminal.app:

echo -n External | base64

This will spit out RXh0ZXJuYWw= which is exactly what we’d expect.

Note — Many plist editors (Clover Configurator, Xcode, etc) will display data as hexadecimal instead of base64, so make sure you pay attention to which you’re using.

Booleans

<true/> or <false/>

These are boolean values. You can think of them as on/off values. Unlike the other types listed here, these are both an opening and closing tag at once so they don’t require a matching tag.

Arrays

<array>
    <string>Bob</string>
    <string>Jim</string>
    <string>Chris</string>
</array>

This is an unordered list of items. If we wanted to gather up a collection of names, we could store them as <string> values in our <array> like the above example. They are accessed by index (which is just the number they’re at in the list).

Dictionaries

<dict>
    <key>Name</key>
    <string>Bob</string>
    <key>Age</key>
    <integer>20</integer>
    <key>Knows XML</key>
    <true/>
</dict>

This denotes a dictionary. These, like arrays are great for storing extra collections of data, but instead of being index based, they utilize key/value organization. As you can see from the above example, we are able to store specific data about Bob through the use of these key/value pairs. All the keys are just text (like our strings).

Examples

Let’s go over some before/after examples with some pretend config.plist data to hopefully remove some of the mystery that happens in this wizard’s closet.

Change True/False

In this first example, we’re just going to change a boolean value from true to false, or vise versa. I’ll use the Disabled value inside a KextsToPatch entry to make this actually a real-world example. First, I’ll give us the KextsToPatch entry we’ll be working with:

<dict>
    <key>Comment</key>
    <string>External icons patch</string>
    <key>Disabled</key>
    <false/>
    <key>Find</key>
    <data>
    RXh0ZXJuYWw=
    </data>
    <key>InfoPlistPatch</key>
    <false/>
    <key>Name</key>
    <string>AppleAHCIPort</string>
    <key>Replace</key>
    <data>
    SW50ZXJuYWw=
    </data>
</dict>

Whew, that might look like a lot up front, but we’ll break things down. Firstly, I’ll go over what the different keys mean:

  • Comment — this is just a comment to describe what the patch is doing.
  • Disabled — this is a bit counter-intuitive, but it’s a boolean value that determines whether or not this patch is disabled. If set to <true/>, the patch will be disabled, and Clover will ignore it. If set to <false/> the patch is not disabled, and it will be applied.
  • InfoPlistPatch — this is a boolean value that tells Clover if we’re patching the Info.plist of the kext instead of the binary.
  • Name — this is the actual kext we intend to patch.
  • Find — this is the base64 data we want to look for in the binary to patch.
  • Replace — this is what we will be replacing the Find data with (if we find it).

Alright, now I’ll explain what this patch is actually for. Via the information in this patch, Clover will look for the AppleAHCIPort kext and search for RXh0ZXJuYWw= (which becomes External when we decode the data) and replace it with SW50ZXJuYWw= (which becomes Internal when we decode it). The end result is that drives that are hot-pluggable (and normally considered external drives) will be displayed as internal drives and not have the orange icon on the desktop. This patching happens on the fly, and is non-destructive — meaning that the AppleAHCIPort kext remains untouched on the system.

So — I guess at this point, I should explain how we would change a boolean value to disable this patch. I mentioned before how the Disabled key works — wo we’ll change the <false/> on the next line to <true/> which sets this patch to disabled like so:

<dict>
    <key>Comment</key>
    <string>External icons patch</string>
    <key>Disabled</key>
    <true/>
    <key>Find</key>
    <data>
    RXh0ZXJuYWw=
    </data>
    <key>InfoPlistPatch</key>
    <false/>
    <key>Name</key>
    <string>AppleAHCIPort</string>
    <key>Replace</key>
    <data>
    SW50ZXJuYWw=
    </data>
</dict>

Not too scary, right?

Adding a New Dict to an Array

This is one that I see quite often that can be a bit overwhelming for new folks. If you are told to add a new patch to config.plist -> ACPI -> DSDT -> Patches, we’d first pop open our config.plist and see what we’re working with.

We’ll assume for this example that the config looks like so:

<?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>FixHPET</key>
                <true/>
                <key>FixIPIC</key>
                <true/>
                <key>FixRTC</key>
                <true/>
                <key>FixTMR</key>
                <true/>
            </dict>
            <key>Patches</key>
            <array>
                <dict>
                    <key>Comment</key>
                    <string>change OSID to XSID (to avoid match against _OSI XOSI patch)</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    T1NJRA==
                    </data>
                    <key>Replace</key>
                    <data>
                    WFNJRA==
                    </data>
                </dict>
                <dict>
                    <key>Comment</key>
                    <string>change _OSI to XOSI</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    X09TSQ==
                    </data>
                    <key>Replace</key>
                    <data>
                    WE9TSQ==
                    </data>
                </dict>
            </array>

As we look down the config, starting at the top, we can follow that path I outlined before. We see ACPI, and under that DSDT. Then underneath DSDT is Fixes and in-line with that is Patches. We’re not concerned with the Fixes section currently, so we’ll just ignore that and focus on the Patches.

Firstly, I’ll point out that under the <key>Patches</key> is an opening array tag (<array>) — and then we have 2 dictionaries — each with similar keys to what we worked with in the prior example (Comment, Disabled, Find, Replace). After the dictionaries, we see the closing array tag (</array>). Our goal is to add a new dictionary in between the <array> and </array> tags while also avoiding slicing up the other existing dictionaries. The data that we’ll be adding looks like so:

<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>

Like I mentioned prior, arrays are unordered — that means it doesn’t matter whether we put our new dictionary before the existing 2, after them, or in between them. I’m going to add it to the end though — just above that last </array> tag like so:

<?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>FixHPET</key>
                <true/>
                <key>FixIPIC</key>
                <true/>
                <key>FixRTC</key>
                <true/>
                <key>FixTMR</key>
                <true/>
            </dict>
            <key>Patches</key>
            <array>
                <dict>
                    <key>Comment</key>
                    <string>change OSID to XSID (to avoid match against _OSI XOSI patch)</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    T1NJRA==
                    </data>
                    <key>Replace</key>
                    <data>
                    WFNJRA==
                    </data>
                </dict>
                <dict>
                    <key>Comment</key>
                    <string>change _OSI to XOSI</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    X09TSQ==
                    </data>
                    <key>Replace</key>
                    <data>
                    WE9TSQ==
                    </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>

More Examples

I’ll try to keep my ears open for more plist editing examples that people have issues with, and add them as needed.

Config.plist Basics

The config.plist resides at /Volumes/EFI/EFI/CLOVER/config.plist and is one of the tougher files to work with for those new to the Hackintosh world. We’ll go into some of the basics of the structure here, then break out into different sections for different hardware config setup.

What Is It?

The config.plist is an XML property list. XML is a markup language that shares a lot of similarities with HTML. This means you’ve got a few different data types available to you, and most of the structure revolves around keeping track of opening and closing tags.

The Structure

When Clover explores a config.plist it expects to have certain parts in certain spots. The order and scope of your config are very important as putting information in the wrong spot can effectively hide it from Clover. You can view the general layout that Clover expects on the Clover Wiki.

Data Types

There are a few major data types we’ll run into when working with the config. I’ll outline the most common here. Note — I’m only using the opening tags here, when actually working with the following types we’ll need to make sure we clean up after ourselves and close our tags.

Strings

<string>This is a string</string>

Strings are just text. Not terribly crazy — you will see them used a lot for comments and other such things.

Integers

<integer>1</integer>

These are just whole numbers. Again, nothing too wild here.

Data

<data>RXh0ZXJuYWw=</data>

While this looks similar to the strings above, it’s actually the base64 representation of some data. Wtf does that mean? You can read up on it here, but in summation — it’s a slick way to save binary data in a text format without it getting lost when copied, moved, etc. What’s even more crazy is that you can take the above base64 data and convert it to ASCII via the following in Terminal.app:

echo RXh0ZXJuYWw= | python -m base64 -d && echo

This will output External on the next line. We use the && echo to output a newline after our text is spit out — this makes it easier to read.

You can also convert from ASCII to base64 (handy for working with ACPI renames — more about that later) with the following in Terminal.app:

echo -n External | base64

This will spit out RXh0ZXJuYWw= which is exactly what we’d expect.

Note — Many plist editors (Clover Configurator, Xcode, etc) will display data as hexadecimal instead of base64, so make sure you pay attention to which you’re using.

Booleans

<true/> or <false/>

These are boolean values. You can think of them as on/off values. Unlike the other types listed here, these are both an opening and closing tag at once so they don’t require a matching tag.

Arrays

<array>
    <string>Bob</string>
    <string>Jim</string>
    <string>Chris</string>
</array>

This is an unordered list of items. If we wanted to gather up a collection of names, we could store them as <string> values in our <array> like the above example. They are accessed by index (which is just the number they’re at in the list).

Dictionaries

<dict>
    <key>Name</key>
    <string>Bob</string>
    <key>Age</key>
    <integer>20</integer>
    <key>Knows XML</key>
    <true/>
</dict>

This denotes a dictionary. These, like arrays are great for storing extra collections of data, but instead of being index based, they utilize key/value organization. As you can see from the above example, we are able to store specific data about Bob through the use of these key/value pairs. All the keys are just text (like our strings).

Examples

Let’s go over some before/after examples with some pretend config.plist data to hopefully remove some of the mystery that happens in this wizard’s closet.

Change True/False

In this first example, we’re just going to change a boolean value from true to false, or vise versa. I’ll use the Disabled value inside a KextsToPatch entry to make this actually a real-world example. First, I’ll give us the KextsToPatch entry we’ll be working with:

<dict>
    <key>Comment</key>
    <string>External icons patch</string>
    <key>Disabled</key>
    <false/>
    <key>Find</key>
    <data>
    RXh0ZXJuYWw=
    </data>
    <key>InfoPlistPatch</key>
    <false/>
    <key>Name</key>
    <string>AppleAHCIPort</string>
    <key>Replace</key>
    <data>
    SW50ZXJuYWw=
    </data>
</dict>

Whew, that might look like a lot up front, but we’ll break things down. Firstly, I’ll go over what the different keys mean:

  • Comment — this is just a comment to describe what the patch is doing.
  • Disabled — this is a bit counter-intuitive, but it’s a boolean value that determines whether or not this patch is disabled. If set to <true/>, the patch will be disabled, and Clover will ignore it. If set to <false/> the patch is not disabled, and it will be applied.
  • InfoPlistPatch — this is a boolean value that tells Clover if we’re patching the Info.plist of the kext instead of the binary.
  • Name — this is the actual kext we intend to patch.
  • Find — this is the base64 data we want to look for in the binary to patch.
  • Replace — this is what we will be replacing the Find data with (if we find it).

Alright, now I’ll explain what this patch is actually for. Via the information in this patch, Clover will look for the AppleAHCIPort kext and search for RXh0ZXJuYWw= (which becomes External when we decode the data) and replace it with SW50ZXJuYWw= (which becomes Internal when we decode it). The end result is that drives that are hot-pluggable (and normally considered external drives) will be displayed as internal drives and not have the orange icon on the desktop. This patching happens on the fly, and is non-destructive — meaning that the AppleAHCIPort kext remains untouched on the system.

So — I guess at this point, I should explain how we would change a boolean value to disable this patch. I mentioned before how the Disabled key works — wo we’ll change the <false/> on the next line to <true/> which sets this patch to disabled like so:

<dict>
    <key>Comment</key>
    <string>External icons patch</string>
    <key>Disabled</key>
    <true/>
    <key>Find</key>
    <data>
    RXh0ZXJuYWw=
    </data>
    <key>InfoPlistPatch</key>
    <false/>
    <key>Name</key>
    <string>AppleAHCIPort</string>
    <key>Replace</key>
    <data>
    SW50ZXJuYWw=
    </data>
</dict>

Not too scary, right?

Adding a New Dict to an Array

This is one that I see quite often that can be a bit overwhelming for new folks. If you are told to add a new patch to config.plist -> ACPI -> DSDT -> Patches, we’d first pop open our config.plist and see what we’re working with.

We’ll assume for this example that the config looks like so:

<?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>FixHPET</key>
                <true/>
                <key>FixIPIC</key>
                <true/>
                <key>FixRTC</key>
                <true/>
                <key>FixTMR</key>
                <true/>
            </dict>
            <key>Patches</key>
            <array>
                <dict>
                    <key>Comment</key>
                    <string>change OSID to XSID (to avoid match against _OSI XOSI patch)</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    T1NJRA==
                    </data>
                    <key>Replace</key>
                    <data>
                    WFNJRA==
                    </data>
                </dict>
                <dict>
                    <key>Comment</key>
                    <string>change _OSI to XOSI</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    X09TSQ==
                    </data>
                    <key>Replace</key>
                    <data>
                    WE9TSQ==
                    </data>
                </dict>
            </array>

As we look down the config, starting at the top, we can follow that path I outlined before. We see ACPI, and under that DSDT. Then underneath DSDT is Fixes and in-line with that is Patches. We’re not concerned with the Fixes section currently, so we’ll just ignore that and focus on the Patches.

Firstly, I’ll point out that under the <key>Patches</key> is an opening array tag (<array>) — and then we have 2 dictionaries — each with similar keys to what we worked with in the prior example (Comment, Disabled, Find, Replace). After the dictionaries, we see the closing array tag (</array>). Our goal is to add a new dictionary in between the <array> and </array> tags while also avoiding slicing up the other existing dictionaries. The data that we’ll be adding looks like so:

<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>

Like I mentioned prior, arrays are unordered — that means it doesn’t matter whether we put our new dictionary before the existing 2, after them, or in between them. I’m going to add it to the end though — just above that last </array> tag like so:

<?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>FixHPET</key>
                <true/>
                <key>FixIPIC</key>
                <true/>
                <key>FixRTC</key>
                <true/>
                <key>FixTMR</key>
                <true/>
            </dict>
            <key>Patches</key>
            <array>
                <dict>
                    <key>Comment</key>
                    <string>change OSID to XSID (to avoid match against _OSI XOSI patch)</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    T1NJRA==
                    </data>
                    <key>Replace</key>
                    <data>
                    WFNJRA==
                    </data>
                </dict>
                <dict>
                    <key>Comment</key>
                    <string>change _OSI to XOSI</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Find</key>
                    <data>
                    X09TSQ==
                    </data>
                    <key>Replace</key>
                    <data>
                    WE9TSQ==
                    </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>

More Examples

I’ll try to keep my ears open for more plist editing examples that people have issues with, and add them as needed.

Home > Configuration

Table of Contents

    • Creating a configuration file
    • Config.plist structure

Creating a configuration file

Clover will perform an automatic configuration based on the computer’s hardware. Nevertheless, an automatic unit is never perfect and this is why the user can permanently change several parameters in the configuration file config.plist or on the fly in the GUI. The configuration file is written in XML but it can be handy to view it as a text file. It can be edited by simple text editors or by plist editors like PlistEdit. Clover is shipped with two variants of this file: a full-size version with all possible configuration options and a minimal version.

The configuration file (config.plist) must be put in the EFI/CLOVER folder.


Some general rules:

If you do not know what value a parameter needs, exclude it from the config file completely!
Do not leave a parameter without a value.
Last but not least, do not set a value you do not understand!


The following way of creating a configuration file is offered:

  1. Install the minimal version, which only uses safe parameters
  2. Load Clover’s GUI and enter the Options menu (by pressing O)
  3. Browse all options and try to understand what is set and why
  4. Fix what you understand and leave the rest like it is
  5. Load the OS. If it doesn’t load, repeat from step 2 until it starts

In the OS start the Terminal and enter:

/usr/local/bin/clover-genconfig >config.plist

This way you get a nearly complete configuration file with the parameters used to successfully load the OS. Some more manual work is needed to finish it.


A new way is as follows:

Rev 4504

Now clover-genconfig is able to produce all your injection keys used at last successful boot including automatic properties when inject=YES. But not including _DSM methods.

  1. Boot as usual. New or old Clover revision.
  2. Use new clover-genconfig to produce your current config.plist.
  3. Update Clover to revision > 4500
  4. Update you config.plist to switch off all injection including Graphics, Audio, LAN, USB
  5. Disable all AddProperties and Arbitrary.
  6. Insert new produced Device->Properties dictionary which will include all your old properties.

Enjoy!


Config.plist structure

  • ACPI

    • ResetAddress and ResetValue
    • smartUPS
    • PatchAPIC
    • HaltEnabler
    • UseSystemIO
    • DSDT
      • Name
      • FixMask
      • Fixes
      • Patches
      • DropOEM_DSM
      • SlpSmiAtWake
      • SuspendOverride
      • ReuseFFFF
      • Rtc8Allowed
    • SSDT
      • DropOem
      • Generate
        • CStates
        • PStates
      • EnableC2
      • EnableC4
      • EnableC6
      • EnableC7
      • PLimitDict
      • UnderVoltStep
      • MinMultiplier
      • MaxMultiplier
    • DropTables
  • Boot

    • Arguments
    • Legacy
    • Timeout
    • DefaultVolume
    • DefaultLoader
    • IgnoreNVRAMBoot
    • Debug
    • Fast
    • XMPDetection
    • Secure
    • NeverHibernate
    • CustomLogo
  • CPU

    • FrequencyMHz
    • BusSpeedkHz
    • QPI
    • Type
    • Latency
    • C2
    • C4
    • C6
  • Devices

    • Inject
    • Properties
    • FakeID
    • Audio
      • Inject
      • ResetHDA
      • AFGLowPowerState
    • USB
      • Inject
      • FixOwnership
      • AddClockID
      • HighCurrent
    • UseIntelHDMI
    • AddProperties
    • NoDefaultProperties
  • Disable Drivers

  • GUI

    • TextOnly
    • Theme
    • ScreenResolution
    • ConsoleMode
    • Language
    • CustomIcons
    • Mouse
    • Scan
      • Entries
      • Tool
      • Legacy
      • Kernel
    • Hide
    • Custom
      • Entries
      • Legacy
      • Tool
  • Graphics

    • Inject
      • Intel
      • ATI
      • NVidia
    • VRAM
    • LoadVBios
    • DualLink
    • PatchVBios
    • PatchVBiosBytes
    • EDID
    • VideoPorts
    • FBName
    • NVCAP
    • display-cfg
    • ig-platform-id
  • KernelAndKextPatches

    • Debug
    • KernelCpu
    • FakeCPUID
    • AppleIntelCPUPM
    • KernelPm
    • AppleRTC
    • KernelLapic
    • KernelHaswellE
    • KextsToPatch
    • ForceKextsToLoad
    • ATIConnectorsController
  • RtVariables

    • MLB
    • ROM
    • CsrActiveConfig
    • BooterConfig
    • MountEFI
    • LogEveryBoot
    • LogLineCount
  • SMBIOS

    • ProductName
    • Family
    • SmUUID
    • FirmwareFeatures
    • SerialNumber
    • BoardSerialNumber
    • BiosVersion
    • BiosReleaseDate
    • BoardType
    • Mobile
    • ChassisType
    • ChassisAssetTag
    • Trust
    • Memory
    • Slots
  • SystemParameters

    • CustomUUID
    • InjectSystemID
    • BacklightLevel
    • InjectKexts
    • NoCaches
    • NvidiaWeb
  • Become a Premium Member for $25/year with no ads to improve your community experience.

You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an alternative browser.

EliteMacx86

Joined
Jul 22, 2018
Messages
4,411
Motherboard

Supermicro X11SPA-T

CPU

Intel Xeon W-3275 28 Core

Graphics

2xAMD RX 580 8GB

OS X/macOS

12.0.x

Bootloader
  1. OpenCore (UEFI)
Mac
  1. Mac mini
  2. MacBook Pro
Mobile Phone
  1. Android
  2. iOS


  • #1

By following this guide, you’ll be able to create a basic config.plist for booting macOS on Desktop.

The config.plist is a system configuration file for the Hackintosh and allows to boot macOS. Without a config.plist, no machine can boot into macOS.

A basic config.plist file is automatically created while installing Clover Boot loader at /EFI/Clover/. If the config.plist is already present, it will be renamed as backup config.plist or remain untouched. The config.plist which is installed by Clover Boot loader, is the default config.plist and is not optimised for all the systems. It can boot into some installation but when talking about the majority, it will fail to boot on most of the newer machines and high end builds.

Also, it’s a good idea to create a config.plist for each specific system which will exclude the errors and trouble while installation and you can easily boot into macOS installation. The configuration file is written in XML and can be edited using a text editor. But we don’t recommend you to use a text editor as it has a chance of config.plist file corruption. The best way to edit a config.plist is to use some specific tools like Clover Configurator, Xcode, Plist Editor Pro etc..

This guide covers a creation of basic config.plist which will allow to boot most of the systems. However, for few systems, such as Xeon, High End CPUs, Workstations, Server, X99, X299, you might need to tweak your config.plist.

For Laptop users, a separate thread is available. Follow the guide here for Laptops.

Notes:

  • It’s good to have a minimal configuration and options set before you install. Once you install, you can add the other options later on. This will cause less trouble and speedup the installation process.
  • As it’s a basic config.plist creation guide, so only important sections has been discussed. This will only allow to boot off your system. It will not enable any other hardware.

Background

Since the release of Clover v5123, OpenCore is integrated to enable boot into Big Sur. The guide discuss about all the configurations for each supported Intel CPU series.

This guide covers the creation of config.plist on the following.

  • Clarkdale
  • Sandy Bridge
  • Ivy bridge
  • Haswell
  • Skylake
  • Kaby Lake
  • Coffee Lake
  • Comet Lake

Download Tool

The very first step is to get Clover Configurator which will help in creating, modifying or editing a config.plist. The Clover Configurator is available for download in the Downloads section of our forum.

Installing Clover Configurator

After downloading, copy the Clover configurator to Applications folder.
You can also use Clover Configurator from your Desktop or any other location but having it in Applications is a good idea.

Clarkdale

Support Compatibility
OS X/macOS OS X Snow Leopard and above
IGPU Support No, IGPU support. Requires a discrete GPU
Legacy/UEFI Most of the motherboard doesn’t supports UEFI

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Renames Purpose
change EHC1 to EH01, change EHC2 to EH02 USB Rename for USB
change PEGP to GFX0 GPU Rename for GPU PM
change HDAS to HDEF Audio Rename for Audio Function

Extras

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Extras

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to a unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES Only applicable to macOS Big Sur.
DevirtualiseMmio
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide
EnableWriteUnprotector
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES and NO Use YES only if your motherboard is UEFI compatible.
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions
ProvideMaxSlide
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES If you have no USB 3.0 ports, it’s recommended to disable this option.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Sandy Bridge

Support Compatibility
OS X/macOS OS X Snow Leopard and above
IGPU Support IGPU is only supported upto macOS High Sierra officially. For using it on Mojave and later, use Chris111 work.
Legacy/UEFI Most of the motherboard doesn’t supports UEFI.

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Renames Purpose
change EHC1 to EH01, change EHC2 to EH02 USB Rename for USB
change PEGP to GFX0 GPU Rename for GPU PM
change HDAS to HDEF Audio Rename for Audio Function

Extras

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Extras

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES
Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,snb-platform-id 10000300 DATA Used to enable IGPU with full acceleration.
device-id 26010000 DATA Device ID for IGPU.
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector YES
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES If you have no USB 3.0 ports, it’s recommended to disable this option.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Ivy Bridge

Support Compatibility
OS X/macOS OS X Lion and above
IGPU Support IGPU is only supported upto macOS Catalina officially.

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Renames Purpose
change EHC1 to EH01, change EHC2 to EH02 USB Rename for USB
change PEGP to GFX0 GPU Rename for GPU PM
change HDAS to HDEF Audio Rename for Audio Function

Extras

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Extras

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES
Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,snb-platform-id 0A006601 DATA Used to enable IGPU with full acceleration.
device-id 3A1E0000 DATA Device ID for IGPU.
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector YES
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES If you have no USB 3.0 ports, it’s recommended to disable this option.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Haswell

Support Compatibility
OS X/macOS OS X Mountain Lion and above

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Renames Purpose
change EHC1 to EH01, change EHC2 to EH02 USB Rename for USB
change PEGP to GFX0 GPU Rename for GPU PM
change HDAS to HDEF Audio Rename for Audio Function

Extras

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Extras

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES
Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,ig-platform-id 0300220D DATA Used to enable IGPU with full acceleration.
device-id 12040000 DATA Device ID for IGPU. Only applicable for Intel HD 4600
framebuffer-patch-enable 01000000 DATA
framebuffer-stolenmem 00003001 DATA
framebuffer-fbmem 00009000 DATA
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector YES
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES If you have no USB 3.0 ports, it’s recommended to disable this option.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Broadwell

Support Compatibility
OS X/macOS OS X Mountain Lion and above

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Renames Purpose
change EHC1 to EH01, change EHC2 to EH02 USB Rename for USB
change PEGP to GFX0 GPU Rename for GPU PM
change HDAS to HDEF Audio Rename for Audio Function

Extras

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Extras

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES
Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,ig-platform-id 07002216 DATA Used to enable IGPU with full acceleration.
framebuffer-patch-enable 01000000 DATA
framebuffer-stolenmem 00003001 DATA
framebuffer-fbmem 00009000 DATA
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector YES
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES If you have no USB 3.0 ports, it’s recommended to disable this option.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Skylake

Support Compatibility
OS X/macOS OS X El Capitan and above

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Renames Find* [HEX] Replace [HEX] Disabled Purpose
change GFX0 to IGPU 47465830 49475055 NO IGPU Rename for IGPU PM. Only use if you’re using IGPU
change PEGP to GFX0 50454750 47465830 NO GPU Rename for GPU PM
change HECI to IMEI 48454349 494D4549 NO
change MEI to IMEI 4D45495F 494D4549 NO
change HDAS to HDEF 48444153 48444546 NO Audio Rename for Audio Function

Renames Purpose
change EHC1 to EH01, change EHC2 to EH02 USB Rename for USB
change PEGP to GFX0 GPU Rename for GPU PM
change HDAS to HDEF Audio Rename for Audio Function

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES

Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,ig-platform-id 00001219 DATA Used to enable IGPU with full acceleration.
framebuffer-patch-enable 01000000 DATA
framebuffer-stolenmem 00003001 DATA
framebuffer-fbmem 00009000 DATA
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector YES
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES This quirk is similar to 15 port limit patch. It’s advised to map your USB ports at the time of postinstallation.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Kaby Lake

Support Compatibility
OS X/macOS OS X El Capitan and above

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Find* [HEX] Replace [HEX] Disabled Purpose
change GFX0 to IGPU 47465830 49475055 NO IGPU Rename for IGPU PM. Only use if you’re using IGPU
change PEGP to GFX0 50454750 47465830 NO GPU Rename for GPU PM
change HECI to IMEI 48454349 494D4549 NO
change MEI to IMEI 4D45495F 494D4549 NO
change HDAS to HDEF 48444153 48444546 NO Audio Rename for Audio Function

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES

Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,ig-platform-id 00001259 DATA Used to enable IGPU with full acceleration.
framebuffer-patch-enable 01000000 DATA
framebuffer-stolenmem 00003001 DATA
framebuffer-fbmem 00009000 DATA
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector YES
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES This quirk is similar to 15 port limit patch. It’s advised to map your USB ports at the time of postinstallation.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Coffee Lake

Support Compatibility
OS X/macOS OS X High Sierra and above

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Find* [HEX] Replace [HEX] Disabled Purpose
change GFX0 to IGPU 47465830 49475055 NO IGPU Rename for IGPU PM. Only use if you’re using IGPU
change PEGP to GFX0 50454750 47465830 NO GPU Rename for GPU PM
change HECI to IMEI 48454349 494D4549 NO
change MEI to IMEI 4D45495F 494D4549 NO
change HDAS to HDEF 48444153 48444546 NO Audio Rename for Audio Function

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES

Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,ig-platform-id 07009B3E or 00009B3E DATA Used to enable IGPU with full acceleration.
framebuffer-patch-enable 01000000 DATA
framebuffer-stolenmem 00003001 DATA
framebuffer-fbmem 00009000 DATA
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio YES
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector NO
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap YES
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions YES
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES This quirk is similar to 15 port limit patch. It’s advised to map your USB ports at the time of postinstallation.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Comet Lake

Support Compatibility
macOS macOS Catalina and above

Creating a config.plist

Open Clover Configurator
There are several sections, starting with the first one

  • USB
  • Audio
  • Discrete GPU Power Management
  • iGPU Power Management
  • SATA

On a Desktop, the common renames are :

Acpi
Clover Configurator Section ACPI sections are as follows:

Under DSDT, patches section, you can implement the necessary ACPI patches for optimising the ACPI system components with DSDT and SSDT.

The common patches includes:

Find* [HEX] Replace [HEX] Disabled Purpose
change GFX0 to IGPU 47465830 49475055 NO IGPU Rename for IGPU PM. Only use if you’re using IGPU
change PEGP to GFX0 50454750 47465830 NO GPU Rename for GPU PM
change HECI to IMEI 48454349 494D4549 NO
change MEI to IMEI 4D45495F 494D4549 NO
change HDAS to HDEF 48444153 48444546 NO Audio Rename for Audio Function

Options Value Description
DMAR YES
FixHeaders

Boot

Boot Args Purpose
-v Enables verbose mode which provides the logs on your screen to check the installation or booting progress. It helps to identify the errors, if any
nv_disable=1 If you’re having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation
agdpmod=pikera If you’re using Navi based AMD GPU, you need to use this boot arg to fix black screen at boot.

Options Description
Default Boot Volume Use the name of your target disk. Only recommended after postinstallation.
Legacy PBR
XMPDetection YES
Timeout This set delay when Clover Bootloader loads. Set it to value of 5. You can increase or decrease as per your requirement. If you don’t want any delay, select «Fast».
Never Hibernate YES

Boot Graphics

The Boot Graphics section is have very less importance and recommended to leave it untouched.

Cpu

The CPU section is usually untouched for all systems. This option can help if your CPU is not detected automatically by the macOS or has wrong information of your CPU such as different name or Unknown CPU.

All the other values should be untouched and not recommended to modify as it can lead to an unstable system. The values such as Frequency, Bus Speed, are automatically controlled by BIOS. For overclocking, you can set the options in BIOS/UEFI.

Devices

Options
Inject Use Layout ID as per your Audio Codec in reference to AppleALC layout ID. Only applies when you use AppleALC which is the recommended method to enable Audio.
ResetHDA YES

Device Properties Key Properties Value Value Type Purpose
PciRoot(0x0)/Pci(0x2,0x0) AAPL,ig-platform-id 07009B3E or 00009B3E DATA Used to enable IGPU with full acceleration.
framebuffer-patch-enable 01000000 DATA
framebuffer-stolenmem 00003001 DATA
framebuffer-fbmem 00009000 DATA
PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0) or PciRoot(0x0)/Pci(0x1C,0x4)/Pci(0x0,0x0) device-id F2150000 DATA Used for Intel i225V Ethernet. Only applicable if you have Intel i225V Onboard Ethernet Controller
PciRoot(0x0)/Pci(0x1b,0x0) layout-id XX NUMBER Used to enable Onboard Audio. A new approach is to use alcid=XX in boot args

Disable Drivers

This section allows you to disable the certain drivers from /EFI/Clover/drivers/UEFI
It’s recommended to leave it untouched.

GUI

The Clover GUI has other sub sections such as Mouse, Scan, Themes, Volumes, etc..

Options Value Description
Mouse Enabled The mouse option allows the use of Mouse within Clover Menu and also allows to change certain mouse properties such as click function.
Language en-US:0 You can use the language for Clover as per your requirement. en-US:0 sets as an English language.
Screen Resolution Your monitor’s screen resolution. For a custom resolution, add the resolution in the field box.
Theme Use the name of the theme which you selected while installing Clover Boot loader. The theme section allows to set the Clover Theme. Such as BGM. If you’re using any other theme, you can set the theme name here.
Hide Volume Preboot Add the volume names which you want to hide at Clover page. It’s recommended to hide «Preboot» volume. This section hides the volumes in Clover menu. For High Sierra and later, it’s recommended to hide Preboot and Prebooter Volumes. You can also hide other volumes as per your requirements.

Preboot is only recommended for High Sierra and later.

Graphics

This section allows to control the Graphics functions with the Framebuffer, VRAM, ports and other stuffs.
When using a AMD or a NVIDIA GPU, it’s recommended to leave it untouched. However, for some old ATI/AMD and NVIDIA Cards, it might be required to set few options.

Kernel and Kext Patches

Options Value Comment
PanicNoKextDump YES
AppleIntelCPUPM YES This is a temporary fix to reach the installer. Once the installation is finished, it’s recommended to use SSDT for CPU PM and disable this option.
DellSMBIOSPatch NO Only applicable if you’re using Dell Motherboard

KextsToPatch
This section allows you to patch kexts without editing them directly.

The patches such as TRIM and NVMe drives, Boot Graphics Glitch can be achieved from here. It’s recommended to leave it blank, untouched. At post-installation, you can add the necessary patches.

To enable TRIM function, follow the guide here.

Rt Variables

This section holds ROM, SIP etc..

ROM UseMacAddr0
BooterConfig 0x28
CsrActivConfig 0x67

SMBIOS

This section is the important section and has various impact on your system.
The SMBIOS should be set according to your System Configuration depending on your CPU.

Options Value Comment
SMBIOS iMac
Memory NO If your system is unable to recognise the correct amount of RAM, you’ll need to add your RAM information here. By default, it’s not recommended unless you have such issue.

Note :

  • Note hat «Serial Number», «Board Serial Number» and «SmUUID» are unique SMBIOS credentials, which should not be revealed in public. They are unique for each system and mandatory for activation of iMessage and FaceTime.
  • This should be configured at the time of post installation.

System Parameters

This section has a small function but has a great importance.

Quirks

Quirks Value Description
AvoidRunTimeDefrag YES
DevirtualiseMmio YES
DisableSingleUser
DisableVariableWrite
DiscardHibernateMap
EnableSafeModeSlide YES
EnableWriteUnprotector NO
ForceExitBootServices
ProtectMemoryRegions
ProvideCustomSlide
SetupVirtualMap NO
SignalAppleOS
ProtectSecureBoot
ProtectUefiServices
RebuildAppleMemoryMap YES
SyncRuntimePermissions YES
ProvideMaxSlide 0
DummyPowerManagement
FuzzyMatch YES
KernelArch
KernelCache
AppleCpuPmCfgLock YES
AppleXcpmCfgLock YES
AppleXcpmExtraMsrs
AppleXcpmForceBoost
DisableIoMapper YES
ExternalDiskIcons
LapicKernelPanic NO Only required for HP Motherboards
PowerTimeoutKernelPanic YES
ThirdPartDrives
XhciPortLimit YES This quirk is similar to 15 port limit patch. It’s advised to map your USB ports at the time of postinstallation.
IncreasePciBarSize
DisableRtcChecksum
DisableLinkeditJettison YES
ExtendBTFeatureFlags
LegacyCommpage

Last edited: Oct 28, 2020

Similar threads

  • This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.

The config.plist resides at /Volumes/EFI/EFI/CLOVER/config.plist and is one of the tougher files to work with for those new to the Hackintosh world. We’ll go into some of the basics of the structure here, then break out into different sections for different hardware config setup.

The config.plist is an XML property list. XML is a markup language that shares a lot of similarities with HTML. This means you’ve got a few different data types available to you, and most of the structure revolves around keeping track of opening and closing tags.

When Clover explores a config.plist it expects to have certain parts in certain spots. The order and scope of your config are very important as putting information in the wrong spot can effectively hide it from Clover. You can view the general layout that Clover expects on the

Clover Wiki

.

There are a few major data types we’ll run into when working with the config. I’ll outline the most common here. Note — I’m only using the opening tags here, when actually working with the following types we’ll need to make sure we clean up after ourselves and close our tags.

<string>This is a string</string>

Strings are just text. Not terribly crazy — you will see them used a lot for comments and other such things.

These are just whole numbers. Again, nothing too wild here.

<data>RXh0ZXJuYWw=</data>

While this looks similar to the strings above, it’s actually the base64 representation of some data. Wtf does that mean? You can read up on it

here

, but in summation — it’s a slick way to save binary data in a text format without it getting lost when copied, moved, etc. What’s even more crazy is that you can take the above base64 data and convert it to ASCII via the following in Terminal.app:

echo RXh0ZXJuYWw= | python -m base64 -d && echo

This will output External on the next line. We use the && echo to output a newline after our text is spit out — this makes it easier to read.

You can also convert from ASCII to base64 (handy for working with ACPI renames — more about that later) with the following in Terminal.app:

echo -n External | base64

This will spit out RXh0ZXJuYWw= which is exactly what we’d expect.

Note — Many plist editors (Clover Configurator, Xcode, etc) will display data as hexadecimal instead of base64, so make sure you pay attention to which you’re using.

These are boolean values. You can think of them as on/off values. Unlike the other types listed here, these are both an opening and closing tag at once so they don’t require a matching tag.

This is an unordered list of items. If we wanted to gather up a collection of names, we could store them as <string> values in our <array> like the above example. They are accessed by index (which is just the number they’re at in the list).

This denotes a dictionary. These, like arrays are great for storing extra collections of data, but instead of being index based, they utilize key/value organization. As you can see from the above example, we are able to store specific data about Bob through the use of these key/value pairs. All the keys are just text (like our strings).

Let’s go over some before/after examples with some pretend config.plist data to hopefully remove some of the mystery that happens in this wizard’s closet.

In this first example, we’re just going to change a boolean value from true to false, or vise versa. I’ll use the Disabled value inside a KextsToPatch entry to make this actually a real-world example. First, I’ll give us the KextsToPatch entry we’ll be working with:

<string>External icons patch</string>

<key>InfoPlistPatch</key>

<string>AppleAHCIPort</string>

Whew, that might look like a lot up front, but we’ll break things down. Firstly, I’ll go over what the different keys mean:

  • Comment — this is just a comment to describe what the patch is doing.

  • Disabled — this is a bit counter-intuitive, but it’s a boolean value that determines whether or not this patch is disabled. If set to <true/>, the patch will be disabled, and Clover will ignore it. If set to <false/> the patch is not disabled, and it will be applied.

  • InfoPlistPatch — this is a boolean value that tells Clover if we’re patching the Info.plist of the kext instead of the binary.

  • Name — this is the actual kext we intend to patch.

  • Find — this is the base64 data we want to look for in the binary to patch.

  • Replace — this is what we will be replacing the Find data with (if we find it).

Alright, now I’ll explain what this patch is actually for. Via the information in this patch, Clover will look for the AppleAHCIPort kext and search for RXh0ZXJuYWw= (which becomes External when we decode the data) and replace it with SW50ZXJuYWw= (which becomes Internal when we decode it). The end result is that drives that are hot-pluggable (and normally considered external drives) will be displayed as internal drives and not have the orange icon on the desktop. This patching happens on the fly, and is non-destructive — meaning that the AppleAHCIPort kext remains untouched on the system.

So — I guess at this point, I should explain how we would change a boolean value to disable this patch. I mentioned before how the Disabled key works — wo we’ll change the <false/> on the next line to <true/> which sets this patch to disabled like so:

<string>External icons patch</string>

<key>InfoPlistPatch</key>

<string>AppleAHCIPort</string>

Adding a New Dict to an Array

This is one that I see quite often that can be a bit overwhelming for new folks. If you are told to add a new patch to config.plist -> ACPI -> DSDT -> Patches, we’d first pop open our config.plist and see what we’re working with.

We’ll assume for this example that the config looks like so:

<?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»>

<string>change OSID to XSID (to avoid match against _OSI XOSI patch)</string>

<string>change _OSI to XOSI</string>

As we look down the config, starting at the top, we can follow that path I outlined before. We see ACPI, and under that DSDT. Then underneath DSDT is Fixes and in-line with that is Patches. We’re not concerned with the Fixes section currently, so we’ll just ignore that and focus on the Patches.

Firstly, I’ll point out that under the <key>Patches</key> is an opening array tag (<array>) — and then we have 2 dictionaries — each with similar keys to what we worked with in the prior example (Comment, Disabled, Find, Replace). After the dictionaries, we see the closing array tag (</array>). Our goal is to add a new dictionary in between the <array> and </array> tags while also avoiding slicing up the other existing dictionaries. The data that we’ll be adding looks like so:

<string>change SAT0 to SATA</string>

Like I mentioned prior, arrays are unordered — that means it doesn’t matter whether we put our new dictionary before the existing 2, after them, or in between them. I’m going to add it to the end though — just above that last </array> tag like so:

<?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»>

<string>change OSID to XSID (to avoid match against _OSI XOSI patch)</string>

<string>change _OSI to XOSI</string>

<string>change SAT0 to SATA</string>

I’ll try to keep my ears open for more plist editing examples that people have issues with, and add them as needed.

Понравилась статья? Поделить с друзьями:
  • Как создать live cd windows 10 на флешку в ultraiso
  • Как создать com порт на windows 7 на ноутбуке
  • Как создать lan сеть между двумя компьютерами windows 10
  • Как создать boot screen windows 7
  • Как создать l2tp подключение на windows 10