wasefire icon indicating copy to clipboard operation
wasefire copied to clipboard

Factorize runner implementations

Open ia0 opened this issue 1 year ago • 0 comments

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:

  1. The runner is generic and configurable by the applets. The applet may describe which devices are present and how they are configured.
  2. 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.

ia0 avatar Mar 22 '23 10:03 ia0