mirror of
https://github.com/logos-co/logos-package.git
synced 2026-08-27 10:11:10 +00:00
`icon` moves from a per-variant copy to a single assets/icon.png at the package root, so a host can read it without unpacking a platform build — the precondition for showing icons before install. Covered by the Merkle tree, so it is authenticated by manifest.sig for free. Adds `lgx add --icon` and Package::setIcon(). Validation (PNG, exactly 256x256) runs at verify/sign, not at create/add — a package is legitimately incomplete mid-assembly. Required for type ui_qml only; core modules render no tile. Manifests below 0.4.0 are exempt: icon: "" was legal at 0.3.0 and is what lgx create defaulted to, so enforcing it would make every published package uninstallable