filmcraft/packaging
Brandon Thomas 9953befe28 Fonts: use craft-fonts as an optional build input
crates/text/build.rs embeds the fonts of a storytold/craft-fonts checkout
named by CRAFT_FONTS_DIR as filmcraft_text::fonts::CRAFT_FONTS (native:
all of them; wasm32: only BIZ UDPGothic Regular). Unset, CRAFT_FONTS is
empty and nothing changes. A bad CRAFT_FONTS_DIR is a warning, or an
error with CRAFT_FONTS_REQUIRED=1. Never a Cargo dependency, no network.

- UI: the Japanese faces are the last fallback of every egui font family
  (BIZ UDPGothic first, Bold first in the semibold/medium families).
- Text engine: registered after the bundled faces; fallback_for picks
  them after the bundled faces and before system faces (Mincho for serif
  text, Gothic otherwise, nearest weight).
- Tests: Japanese glyphs (no tofu) in the UI and title paths, skipped
  without craft-fonts; the theme works with CRAFT_FONTS empty.
- Release: every build job checks out craft-fonts at a pinned commit and
  builds with CRAFT_FONTS_DIR + CRAFT_FONTS_REQUIRED; packages carry
  OFL-<family>.txt. NOTICE, ATTRIBUTION.md (optional build input), AGENTS.md,
  CLAUDE.md, README and docs/contributing.md describe it.

FilmCraft main bundles no Japanese font, so no font files move.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 11:40:29 -04:00
..
linux Release fixes: CLI --version, ALSA on Linux, web build via xtask 2026-10-02 12:33:59 -04:00
macos Fonts: use craft-fonts as an optional build input 2026-10-06 11:40:29 -04:00
web Crash and blank-screen fixes (desktop + web) 2026-10-04 00:26:19 -04:00
windows Fonts: use craft-fonts as an optional build input 2026-10-06 11:40:29 -04:00
.shellcheckrc Signed release pipeline (macOS/Windows/Linux/Web); README community note 2026-10-02 12:06:09 -04:00
env.sh Fonts: use craft-fonts as an optional build input 2026-10-06 11:40:29 -04:00
icons.sh app icon: owl with ear tufts (owner's ArtCraft drawing), Dock/taskbar/launcher wiring, palette docs 2026-10-02 09:52:46 -04:00