OpenCore y UEFI Secure Boot con WSL

El firmware UEFI de las placas base tiene la capacidad de arranque seguro de forma que sólo se permiten los archivos del boot loader firmados digitalmente con las claves que están integradas en el firmware. Con UEFI Secure Boot habilitado:
- Windows puede arrancar ya que los firmware incorporan certificados de Microsoft (a veces también certificados del fabricante de la placa base)
- macOS no puede arrancar; es necesario un sistema Linux en el que generar las claves y firmar con ellas los archivos de OpenCore, este es el motivo por el que actualmente arrancamos OpenCore con UEFI Secure Boot deshabilitado.

Este texto se basa en los artículos de:

Los artículos de sakaki y de Ubuntu plantean cómo arrancar Linux con UEFI Secure Boot activado pero khronokernel y profzei se refieren específicamente a OpenCore y macOS. Los 4 artículos coinciden en la necesidad de hacerlo desde un sistema Linux ya que las herramientas requeridas no existen para macOS. El sistema Linux necesario para firmar los archivos de OpenCore puede suponer un inconveniente significativo por el trabajo que conlleva su instalación y configuración (bien en disco independiente o en máquina virtual).
Una vez en Linux, todo se hace desde Terminal por lo que gran parte del sistema instalado realmente no hace falta.
Esta tarea se puede simplificar gracias a una infraestructura no demasiado utilizada que existe en Windows 10 (compilación 18917 o posterior) y Windows 11: Windows Subsystem for Linux (WSL), gracias a la cual podemos arrancar una imagen genuina de Ubuntu proporcionada por Canonical. Esto posibilita la ejecución de comandos de forma nativa en un terminal de Bash dentro de un entorno Windows que se comporta como Linux.

Continuar leyendo "OpenCore y UEFI Secure Boot con WSL"

Versión de OpenCore no detectada

Podemos encontrar en Internet artículos con un título similar a este: OpenCore not detected: bootloader isn't installed or NVRAM isn't native. Este texto explica la causa más probable de este error y cómo solucionarlo.

Para obtener la versión actual de OpenCore podemos usar el comando:

nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102: versión opencore

Pero a veces la versión de Opencore (incluso el propio Opencore) no se puede detectar y la petición de esta variable devuelve un error cuya apariencia es diferente según el método utilizado para esta tarea.

Terminal:

nvram: Error getting variable - '4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102: opencore-version': (iokit / common) data was not found.

Hackintool:

OpenCore version x.x.x is available - you have 0.0.0. Would you like to download a newer version?

OpenCore Configurator:

The bootloader looks like it is not installed or your NVRAM isn't native.
Continuar leyendo "Versión de OpenCore no detectada"

Cómo usar ScanPolicy en OpenCore

Puesto que existen dispositivos de almacenamiento de varias clases (USB, SATA, NVMe, etc.) y también diferentes sistemas de archivos y tipos de particiones (EFI, APFS, HFS+, etc.) es útil disponer de un mecanismo para definir cuáles de esos elementos van a ser tenidos en cuenta por OpenCore (OC) de acuerdo con nuestras necesidades.

Esto se consigue con la clave ScanPolicy (Integer) que está en la sección Misc / Security del archivo config.plist y que define la política de detección de tipos de dispositivo y sistemas de archivos por parte de OC.
ScanPolicy se calcula sumando valores hexadecimales elegidos de una lista (disponible en el PDF de configuración de OC) y convirtiendo la suma total a su valor decimal que es el que debe anotarse en config.plist. OpenCore sólo mostrará en su menú (picker) como opciones de arranque los elementos definidos en ScanPolicy.

Continuar leyendo "Cómo usar ScanPolicy en OpenCore"

MacPro7,1 memory modules misconfigured

Usuarios de macOS Catalina y Big Sur que utilizan SMBIOS de MacPro7,1 reciben un aviso de error al arrancar: MEMORY MODULES MISCONFIGURED - More than the maximum supported memory is installed in your Mac. Los desarrolladores de OpenCore (OC) tienen un artículo muy completo sobre este problema Fixing MacPro7,1 Memory Errors y la forma de solucionarlo a partir de la versión 0.6.3. Yo me limitaré a traducir lo fundamental y ampliar la información de acuerdo con mi experiencia.

Nota: Lee el artículo Cambiar de Opencore 0.6.8 a 0.6.9 donde se comenta un método más sencillo de realizar esta tarea.

El modelo MacPro7,1 fue puesto a la venta en 2019 y es, hasta la fecha, el Mac más potente y modular, con una orientación claramente profesional. Lleva una CPU Intel Xeon de 8 a 28 núcleos según modelos y tarjetas gráficas AMD Radeon Pro 580X. Carece de iGPU. Aunque no parece un modelo de SMBIOS adecuado a la mayoría de los hackintosh, algunos usuarios que han montado equipos de alto rendimiento con CPU Xeon y gran cantidad de memoria RAM lo utilizan. También lo usan otros usuarios con equipos basados en CPU Intel de 9ª o 10ª generación sin tarjeta gráfica integrada.

Continuar leyendo "MacPro7,1 memory modules misconfigured"

macOS Big Sur en Z390 Aorus Elite

Instalar macOS Big Sur 11.0.1 en la placa Gigabyte Z390 Aorus Elite + procesador i7 9700 Coffee Lake R + tarjeta gráfica AMD Radeon RX 580 + tarjeta WIFI y Bluetooth fenvi FV-T919 + OPENCORE 0.6.4 + AppleALC, IntelMausi, Lilu, USBMap, USBWakeFixup, VirtualSMC, XHCI-unsupported y WhateverGreen

Hardware

  • Placa base Gigabyte Z390 Aorus Élite: soporte para procesadores Intel de generaciones 8 y 9, audio Realtek ALC1220, Ethernet Intel I219V, 4 ranuras PCI-E, puertos USB 2, 3 y 3.1, tarjeta gráfica integrada Intel UHD Graphics 630 y conectores para disco M.2
  • Procesador de 9ª generación Intel i7 9700
  • Ventilador CPU 120 mm Nox Hummer H-312
  • Memoria RAM Corsair Vengeance LPX 3200 MHz 32 GB (2 x 16)
  • Tarjeta gráfica AMD Radeon RX 580 8 GB
  • Tarjeta Wifi y Bluetooth Fenvi FV-T919
  • Fuente de alimentación Mars Gaming MPII850 (850 W)
  • Disco M.2 Western Digital Black SN750 NVMe.

¿Qué funciona bien?

Prácticamente todo lo que he probado:
– Radeon RX 580: 3 puertos DP, 1 puerto DVI y 1 puerto HDMI, salida a 3 pantallas simultáneamente
– Apagado, reinicio y reposo
– Sonido integrado y salida de sonido HDMI
– Puertos USB (2, 3 y 3.1)
– Activación de TRIM para discos SSD y M.2.
– Airdrop, Mensajes, Sidecar...

Continuar leyendo "macOS Big Sur en Z390 Aorus Elite"

OpenCore con Catalina en Z390 Aorus Elite

OpenCore como gestor de arranque en lugar de Clover en un PC con placa base Z390 Aorus Elite, procesador i3 9100 Coffee Lake, tarjeta gráfica RX 580 y macOS Catalina, con SMBIOS de iMacPro1,1, con la tarjeta gráfica integrada deshabilitada en BIOS y mapa de puertos USB específico para esta placa base.

Clover y OpenCore

Hoy disponemos de 2 gestores para arrancar macOS en PCs compatibles: Clover y OpenCore (OC en adelante). Clover es un proyecto maduro, iniciado en 2011 por SergeySlice, capaz de arrancar macOS, Windows y Linux en modo UEFI; actualmente parece ir por detrás de OC, proyecto reciente iniciado en 2019 por vit9696 y Download-Fritz entre otros, unidos bajo el nombre Acidanthera.

Continuar leyendo "OpenCore con Catalina en Z390 Aorus Elite"

macOS Big Sur beta en Z390 Aorus Elite

Instalar macOS 11 Big Sur beta en placa base Z390 Aorus Elite con i3 9100 Coffee Lake y Radeon RX 580, utilizando OpenCore 0.6.4 como gestor de arranque.

macOS 11 Big Sur (BS en adelante) va a ser la siguiente versión del sistema operativo de los Mac. Desde la web Apple Beta Software Program se puede descargar la utilidad que activa las versiones beta públicas desde el panel Actualización de Software de Perfil del Sistema. La versión beta pública actual es la 9, compilación 20A5384c.

En mi PC la instalación de BS beta en un disco SSD independiente ha resultado relativamente fácil teniendo en cuenta la gran cantidad de cambios internos en relación con el kernel, la carga de extensiones, los mecanismos de seguridad y otras características muy importantes en lo que respecta al mundo Hackintosh. Los desarrolladores de OpenCore (OC en adelante) han publicado varias versiones, 0.6.0, 0.6.1, 0.6.2, 0.6.3 y 0.6.4, capaces de arrancar BS en los PC compatibles.

Continuar leyendo "macOS Big Sur beta en Z390 Aorus Elite"

OpenCore 0.6.3: nueva sección Memory

En Opencore (OC) 0.6.3, todavía en fase beta, se ha introducido un cambio en el archivo SampleCustom.plist, se ha añadido una nueva sección Memory dentro de PlatformInfo, en ella se describen una serie de parámetros de la memoria RAM tal como están definidos en la especificación SMBIOS.

Nota: artículo importante solamente para aquellos casos en que la memoria tiene errores en SMBIOS y es conveniente definir sus parámetros manualmente. La mayoría de los usuarios parten del archivo Sample.plist (en vez del archivo SampleCustom.plist) y en él está ausente la sección Memory y para ellos este artículo no es necesario. La diferencia está en la nueva clave CustomMemory que, si está en true, requiere rellenar la sección Memory pero, si está en false, permite omitir completamente esa sección.

Continuar leyendo "OpenCore 0.6.3: nueva sección Memory"