mirror of
https://github.com/storytold/lightcraft.git
synced 2026-11-09 18:10:13 -06:00
- brand.toml is the only place the product name lives; every crate and app
reads it through dac-brand (env vars with legacy fallback, settings folder
with copy-only migration, default library, preset extensions, i18n {app})
- cargo xtask brand check|test, run|install|package, docs, rename-crates,
deny and immich; packaging files are templates rendered from brand.toml
- icons regenerated from brand/icon.svg; upstream branding removed
- MIT licence (segment and fetch stay Apache-2.0); cargo deny licence policy
- clean-room rules in AGENTS.md/CLAUDE.md; docs/upstream-merge.md
- plan/ rebuilt and committed; parity tracker reopens Classic rows, adds
PLAN.md section 2 rows and the IMM Immich section; plan/immich.md and a
pinned Immich test server
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
21 lines
1.1 KiB
Markdown
21 lines
1.1 KiB
Markdown
# App icon
|
|
|
|
Every file here is generated from `brand.toml`'s `icon_svg` (`brand/icon.svg`) by `packaging/icons.sh`.
|
|
Do not edit them by hand: change the SVG (or point `icon_svg` at another one) and rerun the script.
|
|
|
|
| File | What |
|
|
|---|---|
|
|
| `app-1024.png` | 1024 px render (store listings, docs) |
|
|
| `app-macos-512.png` | runtime window/Dock icon on macOS (embedded by `apps/app/src/main.rs`); Apple's grid, with a transparent margin |
|
|
| `app.icns` | macOS bundle icon (`CFBundleIconFile`) |
|
|
| `app.ico` | Windows icon, 16-256 px, embedded in the executable by `apps/app/build.rs` |
|
|
| `hicolor/<n>x<n>/apps/app.png` | Linux icon theme, 16-512 px; the 256 px one is also the runtime window icon on Windows and Linux |
|
|
| `hicolor/scalable/apps/app.svg` | Linux scalable icon (a copy of the source SVG) |
|
|
|
|
Packaging installs the hicolor icons under the brand's app id (`packaging/env.sh` `install_icons`).
|
|
|
|
## Regenerate
|
|
|
|
`packaging/icons.sh` needs `resvg` (or `rsvg-convert`); the `.icns` needs `iconutil` (macOS) or Python Pillow,
|
|
and the `.ico` is packed by `cargo xtask ico`. Every output is committed.
|