Files

1.4 KiB

BeeOS Phase 6 Notes

Completed in this phase

Phase 6 integrates the uploaded Lucide icon asset pack into BeeOS.

New files:

beeos/assets/icons/lucide/
beeos/assets/icons/lucide/manifest.json
beeos/core/icon_manager.py

Why curated icons?

The uploaded Lucide pack contains more than 1,700 SVG icons. BeeOS should not ship the entire set on-watch.

Phase 6 extracts a curated watch-sized subset for:

  • Clock
  • Health
  • HiveStore
  • Settings
  • Scripts
  • Resource Monitor
  • Developer Tools
  • GPS
  • Battery
  • Notifications
  • About
  • Bluetooth
  • Display
  • Watch Faces
  • Themes
  • Plugins
  • Permissions
  • Runtime
  • Install/remove actions
  • HiveStore package types

Simulator limitation

Tkinter does not natively render full SVG path data. The simulator now has a lightweight asset-aware icon renderer and glyph fallbacks.

For real BeeOS/LVGL, the SVG files should be converted to a format LVGL can render efficiently.

Next possible phase

Phase 7 should probably add an asset conversion tool:

tools/convert_icons_for_lvgl.py

Possible outputs:

  • PNG previews
  • monochrome PBM/bitmap icons
  • LVGL C image descriptors
  • BeeOS compact JSON draw commands

Icon-render fix

The original Phase 6 build included SVG assets, but the simulator still displayed fallback glyphs because Tkinter cannot draw Lucide path-based SVGs directly.

This fixed build adds pre-rendered PNGs and uses them for app icons.