magicciv/scripts/run/tools.sh
Natalie 629fd05c67 fix(macos): Fix GDExtension loading and class_name resolution for fresh macOS checkouts
- Add scripts/dev-setup/osx.sh for one-command macOS dev environment setup
- Add .godot/extension_list.cfg creation to enable GDExtension discovery
- Fix .gdextension to include macos.debug and macos.arm64 library entries
- Replace bare class_name self-references (e.g. BiomeModel.new()) with new()
  in static methods — fixes compilation on cold boots without import cache
- Replace bare class_name type annotations (GameMap, Unit) with RefCounted/Variant
  in pathfinder.gd, ai_turn_bridge.gd, simple_heuristic_ai.gd, rust_fauna_bridge.gd
- Add headless boot check (step 7) to ./run verify pipeline
- Add offscreen screenshot tool via SubViewport
- Wire ./run setup to dispatch to platform-specific scripts
- Source ~/.cargo/env in common.sh for Rust toolchain discovery
- Allow clippy::result_large_err in api-gdext (godot-rust macro generates large Results)
- Update .npmrc registry from Verdaccio to Forgejo and regenerate pnpm-lock.yaml

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 12:55:33 -07:00

14 lines
404 B
Bash

#!/usr/bin/env bash
# Tools: spritegen, setup
cmd_tools_spritegen() {
python3 "$REPO_ROOT/tools/sprite-generation/cli.py" "$@"
}
cmd_setup() {
case "$(uname -s)" in
Darwin) "$REPO_ROOT/scripts/dev-setup/osx.sh" "$@" ;;
Linux) echo -e "${RED}Linux setup not yet implemented${NC}"; exit 1 ;;
*) echo -e "${RED}Unsupported OS: $(uname -s)${NC}"; exit 1 ;;
esac
}