Cambiar de OpenCore 0.6.7 a 0.6.8

Es muy recomendable leer atentamente el mensaje de vit9696, es una excelente fuente de información de la evolución de OpenCore incluyendo los cambios más importantes de la versión nueva.

En el paso de OpenCore 0.6.7 a 0.6.8 ha habido un número enorme de cambios y mejoras.
OpenCanopy se ha renovado con mejoras en cualquier aspecto relacionado con la interfaz gráfica del picker. Se han añadido nuevos iconos, se han mejorado las etiquetas, se ha cambiado la posición inicial del puntero, se ha mejorado el comportamiento del teclado y del ratón, etc. Es casi un driver nuevo debido a la gran cantidad de modificaciones.
Otros drivers también tienen mejoras, CrScreenshotDxe por ejemplo.
También se han mejorado las herramientas externas, especialmente ocvalidate y ocpasswordgen. Lo mismo se aplica a las herramientas de OpenCore: OpenShell, ControlMsrE2 (heredera de CFGLock de Brumbaer), etc.
El archivo config.plist trae varios cambios, el más significativo es la nueva sección UEFI > AppleEvents que permite configurar el comportamiento del teclado y el ratón.
Aparte de todo esto, se ha revisado y actualizado la documentación.
Los desarrolladores de OpenCore han trabajado mucho y nos ofrecen esta versión 0.6.8 muy mejorada respecto a la anterior.

config.plist

  • Muchos cambios para hacer que el texto sea más legible y comprensible, incluida la corrección de errores tipográficos
  • ACPI > Patch: se agregaron 2 nuevas propiedades, Base y BaseSkip
    • Base (String): ruta base ACPI para la búsqueda de parches (\ _SB.PCI0.LPCB.HPET por ejemplo), puede estar vacía
    • BaseSkip (Number): número de ocurrencias del valor Base encontradas para omitir antes de que se apliquen los hallazgos y reemplazos, puede ser cero
  • Booter > Quirks: se agregó ForceBooterSignature (Boolean) para establecer boot-signature de macOS en OpenCore, puede ser False
  • Misc > Boot > LauncherOption (String): hasta ahora había 3 opciones, Disabled, Full y Short, se agregó una cuarta opción System que no genera opción de arranque pero asume que la opción personalizada especificada está bien configurada. La mayoría de nosotros usamos Disabled o Full.
  • UEFI > se ha añadido una nueva sección AppleInput que proporciona un control más preciso del protocolo Apple Event. Tiene 6 propiedades:
    • AppleEvent (String): determina si se utiliza el protocolo incorporado en OpenCore o el protocolo Apple Event OEM (si está disponible). En general, se debería preferir la reimplementación de OpenCore. Puede ser Auto (failsafe), Builtin y OEM. Yo uso Builtin
    • CustomDelays (String): habilita retrasos personalizados en la repetición de teclas. Puede ser Enabled (se usan los valores KeyInitialDelay y KeySubsequentDelay), Disabled (se usan los valores predeterminados de Apple de 500ms (50) y 50ms (5)) y Auto (failsafe) (tratado como Enabled cuando KeySupport es True y Disabled en caso contrario). Yo uso Auto
    • KeyInitialDelay (Number): cuando no se usa KeySupport, esta opción configura el retraso inicial antes de que se repita una tecla. El valor predeterminado de Apple OEM es 50 (500 ms). Yo uso 0 (actúa como 50 o 500 ms)
    • KeySubsequentDelay (Number): configura los retrasos subsiguientes de teclas en OpenCore. El valor predeterminado de Apple OEM es 5 (50 ms). Yo uso 5 (actúa como 25 o 250 ms)
    • PointerSpeedDiv (Number): configura el divisor para los movimientos del puntero. El valor failsafe es 1. El valor 0 no es válido para esta opción. Yo utilizo 2 para tener un puntero más lento que el predeterminado.
    • PointerSpeedMul (Number): configura el multiplicador para los movimientos del puntero. El valor predeterminado de Apple OEM es 1.
  • UEFI > ProtocolOverrides: se ha eliminado la clave AppleEvent.

OpenCanopy

Trae un gran número de mejoras, probablemente sea uno de los elementos de OpenCore que más cambios recibe en esta nueva versión:

  • Mejoras en casi todos los aspectos del driver.
  • Presentación mejorada de etiquetas
  • Presentación mejorada cuando UIScale=2
  • Soporte mejorado para el puntero del ratón que ahora se muestra centrado en la pantalla de forma predeterminada. Para que funcione, hay que habilitar el control de puntero en el picker: el valor de Misc > Boot > Picker Attributes debe ser 17 (0x11) si habitualmente usas 1 (0x01). Más abajo tienes información ampliada sobre los valores que puede adoptar Picker Attributes.
  • Se han agregado nuevos iconos, la lista actual de iconos obligatorios es:
    1. AppleRecv / 2. AppleTM / 3. BtnFocus / 4. Cursor / 5. Dot / 6. Enter / 7. HardDrive / 8. Left / 9. Lock / 10. Password / 11. Restart / 12. Right / 13. Selected / 14. Selector / 15. SetDefault / 16. Shell / 17. ShutDown / 18. Tool / 19. Windows.
    Pero se pueden añadir otros para mejorar el diseño: Apple, ExtAppleRecv, ExtAppleTM y ExtHardDrive. Incluso ResetNVRAM o iconos Linux.​​​​​​​

Notas sobre OpenCanopy

  • La carpeta Resources > Image debe tener un elemento de cada tipo de icono para que se muestre el picker gráfico (External). Puedes descargar la carpeta Resources con todos los elementos necesarios desde acidanthera. Estos son los iconos predeterminados creados por los desarrolladores de OpenCore. Su propósito es mostrar el picker tal como se muestra en los Mac reales.
    Ya hay algunos temas compatibles con OpenCore 0.6.8 diseñados por otros usuarios. Por ejemplo, Default-StarWars de chris1111 o la serie BsxDarkFence de blackosx, todos ellos temas de gran calidad.
  • Left y Right solo aparecen cuando la fila de iconos es mayor que el ancho de la pantalla, se utilizan para moverse a lo largo de las entradas.
  • Los iconos Restart y ShutDown se colocan en la parte inferior de la pantalla, se puede acceder a ellos con el puntero del ratón o con la tecla Tab. BtnFocus resalta estos iconos cuando son seleccionados.
  • Dot, Lock, Password y Enter se utilizan si hemos configurado contraseña para OC.
  • Selector cambia a SetDefault cuando presionas la tecla Ctrl de modo que, si presionas ENTER al mismo tiempo, la entrada se marca como dispositivo de arranque predeterminado.
  • Las entradas Recovery añaden tienen el sufijo (dmg).
  • Los volúmenes de macOS se muestran con el icono genérico HardDrive.icns pero, si hay un icono Apple.icns, se muestran con este icono específico (esto no está relacionado con OpenCore 0.6.8 pero aprovecho para recordarlo).
  • La posición predeterminada del cursor realmente no es completamente centrada sino que tiene un ligero desplazamiento hacia la derecha para que coincida con el aspecto del picker de Apple.

Picker Attributes: información ampliada

La clave Misc > Boot > Picker Attributes es de tipo Number (Integer) por lo que los valores que vemos en config.plist son decimales. Pero OpenCore calcula este valor con números hexadecimales. Hay que jugar con estos parámetros:

Provides custom icons for boot entries: valor 1 (0x01 hex)
Provides custom rendered titles for boot entries: valor 2 (0x02 hex)
Provides predefined label images for boot entries without custom entries: valor 4 (0x04 hex)
Prefers builtin icons for certain icon categories to match the theme style: valor 8 (0x08 hex)
Enable pointer control in the picker if available: valor 16 (0x10 hex)
Enable display of additional timing and debug information in Builtin picker in DEBUG and NOOPT builds only: valor 32 (0x20 hex)

Tenemos que sumar el valor hexadecimal de las opciones elegidas y convertirlo a decimal, que es el valor que se introduce en config.plist.

Ejemplo 1

Como yo utilizaba 1 (0x01 Provides custom icons for boot entries) y quería añadir la opción con valor 16 (0x10 Enable pointer control in the picker if available), la suma hexadecimal es 0x01 + 0x10 = 0x11 que es 17 en decimal. 17 es el valor que he de introducir en config.plist.

Otro ejemplo

Un usuario que utilizaba 11 (0x0B en hexadecimal) para disponer de etiquetas personalizadas tenía habilitadas 3 opciones:

  • Provides custom icons for boot entries: valor 1 (0x01 hex)
  • Provides custom rendered titles for boot entries: valor 2 (0x02 hex)
  • Prefers builtin icons for certain icon categories to match the theme style: valor 8 (0x08 hex).

01 + 02 + 08 hexadecimal = 0B que es 11 en decimal.
Este usuario quiere añadir la opción Enable pointer control in the picker if available (0x10 hexadecimal) con lo que la suma es 01 + 02 + 08 + 10 = 1B, que es 27 decimal. 27 es el valor que debe introducir en config.plist.

CrScreenshotDxe

Se ha mejorado el driver de capturas de pantalla, guardando las imágenes en la raíz de la partición OpenCore (ESP) o en cualquier sistema de archivos FAT o FAT32 disponible, al presionar F10. Se trata de una versión modificada del driver CrScreenshotDxe de Nikolaj Schlej.

ocpasswordgen

Aunque la utilidad ocpasswordgen existe desde la versión 0.6.7, se han agregado nuevos iconos específicos para esta función: Dot, Lock, Password y Enter. Para establecer una contraseña para OpenCore, hay que ejecutar ocpasswordgen en Terminal. Se generan 2 hashes, PasswordHash y PasswordSalt, que deben ser introducidos en los cuadros de texto del mismo nombre en Misc > Seguridad, seleccionando también la opción EnablePassword.

De esta forma, OpenCore presenta el diálogo para introducir la contraseña. Sin ella no es posible acceder al menú.

2 comentarios en «Cambiar de OpenCore 0.6.7 a 0.6.8»

  1. De cine como siempre, súper bien explicado y no sé si son cosas mías o me arranca aún mas rápido que con la version anterior.

    Responder
    • Gracias!!! Muy amable. Puede ser que arranque ligeramente más rápido que la versión 0.6.7, pequeñas diferencias por supuesto, desde 0.6.5 el arranque es tan rápido que me cuesta apreciar si mejora.

      Responder

Responder a pol