Después de siete meses de desarrollo, se ha publicado el lanzamiento del firmware de arranque Libreboot 20220710, en la cual se observa que la atención principal en la preparación de la nueva versión se centró en solucionar los problemas observados en la versión anterior. No se proponen cambios significativos ni soporte para nuevas placas en la versión 20220710, pero se notan algunas mejoras.
Para quienes desconocen de Libreboot, deben saber que este es un proyecto que desarrolla una bifurcación completamente libre del proyecto CoreBoot, que proporciona un reemplazo libre de binarios para el firmware propietario UEFI y BIOS responsable de inicializar la CPU, la memoria, los periféricos y otros componentes de hardware.
Libreboot tiene como objetivo crear un entorno de sistema que prescinda por completo del software propietario, no solo a nivel de sistema operativo, sino también a nivel de firmware de arranque. Libreboot no solo limpia CoreBoot de componentes que no son libres, sino que también agrega herramientas para que sea más fácil de usar para los usuarios finales, creando una distribución que puede ser utilizada por cualquier usuario sin habilidades especiales.
Principales novedades de Libreboot 20220710
Esta es la cuarta versión del Proyecto GNU y se promociona como la primera versión estable (las versiones anteriores se han marcado como versiones de prueba, ya que requieren estabilización y pruebas adicionales).
Por ejemplo en grub.cfg se añadieron muchas mejoras de rendimiento, mejorando las velocidades de arranque cuando se utiliza la carga útil GNU GRUB (cortesía de Ferass ‘Vitali64’ EL HAFIDI con mejoras adicionales realizadas por Leah Rowe)
Tambien se destacan las mejoras en la documentación, pues en las versiones de prueba anteriores de 2021 no incluían snapshots de la documentación (que en realidad son los archivos fuente de Markdown para el sitio web), pero esta versión incluye ahora una instantánea de la documentación actual de Libreboot, según el momento del lanzamiento.
Ademas de ello, tambien se destaca que se han realizado optimizaciones de rendimiento para acelerar la carga cuando se utiliza un entorno de carga útil basado en GNU GRUB.
Se generaron compilaciones extendidas de 16 MB para Macbook2 y Macbook1, ademas de que el sistema de compilación se ha mejorado para incluir secuencias de comandos para modificar automáticamente los archivos de configuración de coreboot y la salida en serie está deshabilitada para todas las placas de forma predeterminada, lo que resolvió los problemas con la ralentización del arranque.
En las computadoras portátiles con chipset GM45/ICH9M tienen PECI deshabilitado en coreboot para evitar un error de microcódigo.
Tambien podremos encontrar que se ha implementado el soporte preliminar para la integración con u-boot loader, que aún no se utiliza en compilaciones para placas, pero a futuro permitirá comenzar a generar compilaciones para plataformas ARM.
Por otra parte, se menciona que en laptops GM45/ICH9M se deshabilitó PECI en coreboot, para solucionar un error de microcódigo que hace que SpeedStep (y posiblemente otras características de la CPU) falle.
De los demás cambios que se destacan de esta nueva versión:
- No trate las advertencias como errores al compilar flashrom (arreglos que se basan en versiones más nuevas de GCC).
- Mejora del sistema de compilación: scripts automatizados para modificar las configuraciones de coreboot.
- Se deshabilitó (de forma predeterminada) la salida en serie en todas las placas para evitar problemas de velocidad de arranque.
- grub.cfg: en realidad habilita los teclados USB, explícitamente (soluciona el error que se ve en algunas computadoras portátiles, cuando se usa la carga útil de GRUB).
- Configuraciones de Coreboot: no habilite wifi durante el inicio temprano (responsabilidad de seguridad)
- scripts: procesa versiones de git cuando lbmk es un árbol de trabajo o un submódulo.
- Actualizado a flashrom más nuevo, en el sistema de compilación
- cc1: error fatal: no se puede abrir ‘out/src/asm-offsets.s’ para escribir: No existe tal archivo o directorio
- Solucion en lbmk: llama específicamente a python3, cuando se va a usar python3 en lugar de 2.
- lbmk: solución preliminar para la verificación de credenciales de git. Establezca un nombre/correo electrónico de marcador de posición si no se ha establecido uno.
Finalmente si estás interesado en poder conocer más al respecto sobre esta nueva versión, puedes consultar los detalles en el siguiente enlace.