Conference Schedule - BSDCan 2023

SmartixOS and FreeBSD: Extending the Bootloader with a theming system

Date: 2023-05-19
Time: 10:15–11:00
Room: DMS 1110
Level: Intermediate

SmartixOS and FreeBSD

Extending the bootloader with a theming system

One of the main reasons why we got interested in the boot procedure and more specifically the bootloader menu display is that the FreeBSD bootloader although powerful and flexible but certain features and utilities needed to easily manipulate the loader display are either missing or quite complex to use.

The challenge was to find easier ways to make changes to the displayed logos, brands and menus independently of the complexity of the drawing. This was a requirement that our team needed to tackle because of the complex requirements we dictated by our environment and the main market we strive to serve; Africa. In the search for answers, we stumbled upon the concept of themes applied to bootloader and the terminal. The scripts responsible for the display were extended and certain parts rewritten by our team to accommodate the new theming system.The library now makes it very easy to add, remove, theme (colorize) specific parts of the display or the entire display at once with different colors or with the theme color. The library extends this idea the terminal so the terminal can also be themed to match. In conclusion, this feature has been implemented with the purpose to help the administrator visually separate, represent and identify environments, localities, regions, system functions (QA, Test, Production environment) etc...


The following slides have been made available for this session: