From 64e188384b9c5eb203a91ae5dcd78901ed5e02f1 Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Thu, 19 Mar 2026 13:28:12 +0100 Subject: [PATCH] chore(config): add spike gitignore rules and Blender wrapper Add .gitignore entries for spike Godot caches, import artifacts, and vendor asset downloads. Add tooling/blender wrapper that resolves flatpak/native Blender installs and auto-converts relative paths to absolute for flatpak sandbox compatibility. Co-Authored-By: Claude Opus 4.6 --- .gitignore | 8 ++++++++ tooling/blender | 28 ++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100755 tooling/blender diff --git a/.gitignore b/.gitignore index cf456dec6..202b738b6 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,14 @@ renderer/**/*.import renderer/**/*.uid renderer/output/*.png +# Spikes (Godot cache + import artifacts) +spikes/**/.godot/ +spikes/**/*.import +spikes/**/*.uid + +# Asset downloads (vendor archives, not game content) +docs/assets/downloads/ + # Database (shared across worktrees at ../settledreach.db, not tracked) db/commonwealth.db* diff --git a/tooling/blender b/tooling/blender new file mode 100755 index 000000000..2e3643b19 --- /dev/null +++ b/tooling/blender @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +# Blender wrapper — resolves flatpak/native/brew installs to a single entry point. +# All project scripts should call this instead of 'blender' directly. +# +# Resolves relative paths in --python and -- args to absolute paths so flatpak +# sandboxing doesn't break file resolution. +# +# Usage: +# tooling/blender --background --python script.py -- input.glb output.glb + +# Convert relative paths to absolute +args=() +for arg in "$@"; do + if [[ -e "$arg" ]]; then + args+=("$(realpath "$arg")") + else + args+=("$arg") + fi +done + +if command -v blender &>/dev/null; then + exec blender "${args[@]}" +elif flatpak info org.blender.Blender &>/dev/null 2>&1; then + exec flatpak run org.blender.Blender "${args[@]}" +else + echo "ERROR: Blender not found (checked PATH and flatpak)" >&2 + exit 1 +fi