Files
yellowjacket/build/docker
yonluandClaude Opus 5 e7873bded3 build(wails): add the v3 toolchain alongside v2
Phase 1 of plan 009. The app still builds and runs on v2 — nothing in
main.go or backend/ has moved yet — but the v3 CLI, its pinned runtime
and its build-asset tree are now present, which is what Phase 2 needs.

- wails/v3 v3.0.0-beta.8 pinned per D5, and wails3 added to the `tool`
  block beside the v2 CLI per D3. Both are vendored; neither is a
  global install.
- build/ now holds the v3 build assets, copied wholesale from a
  `wails3 init` scaffold rather than hand-written. That collides with
  this repo's existing use of build/ as ignored build *output*, so
  .gitignore narrows to build/bin/ and bin/ and the assets are tracked.
  The mobile platforms are not carried: this is a desktop player
  (MPRIS over D-Bus, beep, XDG paths) and cannot target them.
- build/config.yml's info block is filled from wails.json, which stays
  for now because the v2 CLI still reads it.
- Taskfile.yml defaults PACKAGE_MANAGER to pnpm, since the scaffold
  assumes npm and frontend/package.json.md5 is part of the dep-caching
  scheme.

One deviation from the plan worth recording. webkitgtk-6.0 is not
installed on this machine, so the default GTK4 path is unavailable and
the gtk3 fallback is in use. That also means `go tool wails3` does not
work — the CLI itself fails to compile without webkitgtk-6.0 — while
`go run -tags gtk3 .../cmd/wails3` does. The Makefile rewrite in the
next commit has to account for that, and it goes away once the GTK4
dependency is installed.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UDCbcCZQepnpSQYJ6SxxZm
2026-08-14 13:39:20 -04:00
..