69 lines
1.4 KiB
Markdown
69 lines
1.4 KiB
Markdown
# BeeOS Phase 6 Notes
|
|
|
|
## Completed in this phase
|
|
|
|
Phase 6 integrates the uploaded Lucide icon asset pack into BeeOS.
|
|
|
|
New files:
|
|
|
|
```text
|
|
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:
|
|
|
|
```text
|
|
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.
|