Состоялся первый публичный релиз OpenCore v0.0.1
Про данный загрузчик я
рассказывал ещё в марте, когда проект ещё находился в состоянии глубокой альфы, хоть и пригодной к использованию в некоторых случаях. За полтора месяца ситуация значительно изменилась:
· Появилась возможность конфигурирования через файл config.plist, что подробно описано в документации;
· Инжект кекстов;
· Патчер ядра, благодаря чему появились патчи по типу кловерного KernelPM для обхода блокировки регистра MSR 0xE2;
· Автоматическое заполнение SMBIOS;
· Выбор раздела, с которого загружаться с сохранением выбора из панели "Startup Disk" в macOS;
· Обновление и установка ОС, в том числе и из dmg-образов;
· Поддержка FileVault2;
· Множество workaround-ов для обхода кривости прошивок Aptio IV и V, которые необходимы для нормальной работы macOS;
· Возможность подписания файлов загрузчика во избежание внесения изменений в его конфигурацию (но пока без Secure Boot).
Хочу поставить себе, какой алгоритм действий?
·
Полностью изучить документацию, в которой подробно расписано, как настраивать конфиг и за что каждая настройка отвечает;
· Нет, серьёзно: это придётся сделать, иначе никак;
· Убедиться, что для завода вашего железа не используются специфические приёмы по типу кловерного KernelLapic. В самом загрузчике есть несколько встроенных фиксов ACPI, не более. Если кловерные фиксы жизненно необходимы, изучайте ручное редактирование DSDT (на десктопах не шибко актуально). В репозитории приводится
несколько ACPI-таблиц, которые могут понадобиться;
· Взять
релизный загрузчик и расположить его на разделе EFI согласно документации;
· Добавить
последние AptioMemoryFix и AptioInputFix,
ApfsDriverLoader, AppleUISupport и HFSPlus/VboxHfs (которые, к слову, тоже сегодня обновились). Второй драйвер для Hfs медленней, чем от Apple, но зато Open Source-ный;
· Добавить необходимые вам кексты, в качестве эмулятора SMC рекомендуется использовать VirtualSMC (соответственно, со своим же efi-драйвером);
· Внимательно заполнить конфиг, сверяя каждый пункт с мануалом. Kext-ы и EFI-драйвера прописываются вручную. SMBIOS заполняется следующим образом: если ваша мак-модель
присутствует в базе данных, то в качестве образца используйте
Sample.plist, иначе
SampleFull.plist и заполняйте необходимые поля вручную;
· Отключить RequireVault и RequireSignature, иначе просто без предварительного подписания файлов загрузчика не запуститесь;
· Ещё раз прочитать документацию, постучать в бубен и понадеяться на лучшее.
P.S: изменения в проекте происходили чуть ли по несколько раз в день, изменения в конфиге тоже постоянно (да и к релизу 1.0.0 тоже что-то изменится), так что постоянное освещение этой темы превратит канал про один OC. Так что если хотите своевременно узнавать о нововведениях в проекте, то следите за GitHub (например,
по изменениям в документации).