Tactility/Modules/app-hub-module
Ken Van Hoeylandt 0ebd471cc0
Reduce internal RAM use: embedded assets, fonts in flash, PSRAM stacks, file_ops (#701)
- The `/system` FAT volume is removed. Its files are embedded in the firmware as generated C arrays.
- Default-size fonts are generated at build time and used from flash.
- The LVGL task and the Launcher run on PSRAM-preferred stacks. A new kernel `file_ops` API takes the file work off those threads.
- `MainDispatcher` is reimplemented as an on-demand task.
- More long-lived state is allocated with the PSRAM-preferring helpers.
- Other fixes and improvements
2026-10-18 17:30:43 +02:00
..

app-hub-module

App Hub service (tactility.apphub): finds, installs and removes apps from the online app catalog. The C API is in <app_hub/app_hub.h>.

  • app_hub_search() lists the catalog apps that are compatible with the device, merged with all installed apps.
  • app_hub_refresh(), app_hub_install(), app_hub_update_all() and app_hub_remove() queue an operation. Operations run one at a time on a background task, which stops after 5 seconds without operations and starts again for the next one.
  • Subscribe with app_hub_event_subscribe(), then wait with app_hub_event_await() and read with app_hub_event_poll(). The events are REFRESHING/REFRESHED, INSTALLING/INSTALLED, REMOVING/REMOVED and UPDATING/UPDATED, with the app id and the result.

The apphub shell command uses the same API: refresh, search [query], updates, info <id>, install <id>, update and remove <id>.

The catalog is stored in the service's user data directory, so it's available offline after the first refresh.

License: Apache v2.0