wasefire
wasefire copied to clipboard
Factorize runner implementations
It should be easy to write a runner for a board similar to an already supported board.
This could be done in 2 non-exclusive ways:
- The runner is generic and configurable by the applets. The applet may describe which devices are present and how they are configured.
- Runners are small binaries relying on multiple composable libraries. There would be a library per architecture, per PAC, per HAL, per device, etc.
In the first case, a user with a custom board may only have to write an applet responsible for both configuring the runner and the actual business logic. In the second case, they would need to split the code into a small runner responsible for describing the board and the applet responsible for the business logic. Both approaches may be mixed, for example what is soldered may need to be described in the runner, while what can be more easily added and removed would be configured in the applet.