InfiniTimeOrg / InfiniTime

Firmware for Pinetime smartwatch written in C++ and based on FreeRTOS
GNU General Public License v3.0
2.76k stars 944 forks source link

API for plugins? #113

Closed denizzzka closed 2 years ago

denizzzka commented 4 years ago

Hi!

It is possible to add plugins API or ABI? For example, for adding some more external binaries during linking and with ability to "register" it.

Perhaps someone is interested in writing add-ons for Pinetime on other languages ​​than C++ and with a different than gcc compiler.

(I am personally want to try D language with ldc2 compiler based on LLVM)

Avamander commented 4 years ago

It's possible, but nobody has spent the effort do so. Feel free to try.

JF002 commented 4 years ago

External apps and stable API/ABI are something we'll want to work on one day or another! To be honest, at this time, I have no idea how we'll build binaries that we'll be able to load dynamically into the running firmware. As @Avamander said, if you want to do some researches and do some experiment, feel free to share your results :)

denizzzka commented 4 years ago

I have no idea how we'll build binaries that we'll be able to load dynamically into the running firmware.

As for me, for a beginning static linking is enough.

JF002 commented 2 years ago

I've just created a more generic feature request about dynamic app and custom watchface to group multiple requests around that topic. Feel free to continue the discussion in #1262 ;-)