Files
gig-line/Docs/toolchain.md
T
zwitschi 8c73d16a39 docs: record git-lfs/clang/cmake/ninja install and flag the stale QGIS flatpak
git-lfs 3.7.1 with an active lfs filter, clang 23.1.4, cmake 4.3.0, ninja
1.13.2. The flathub lts branch installed QGIS 3.28.9 on an EOL Qt5 runtime, so
it is recorded as an invalid pin with the replacement path.
2026-11-06 21:41:16 +01:00

3.9 KiB

Toolchain

Pinned versions for this project. Record the exact build string a tool reports, not just the version family, and re-record it after every upgrade. The most common cause of scale, material, and import mismatches is silently mixing two versions of the same tool.

Audited 2026-11-06 on the development workstation.

Pins

Component Pinned Source Status
Bazzite 45.20261105 (Kinoite, bazzite-dx-nvidia), kernel 7.2.15-ogc1.1.fc45 ujust update / rpm-ostree upgrade Booted and default. 44.20261026 retained as rollback.
NVIDIA driver 615.78.08, open kernel module Bazzite image Verified: desktop session renders through the RTX 5070 Ti; Vulkan GPU0 is the RTX 5070 Ti on driver 615.78.08, conformance 1.4.3.3.
Unreal Engine 5.8.x — pin one exact build Epic (license required) Not installed.
Unreal Linux toolchain engine-bundled clang Engine source tree Not installed. Do not substitute the system compiler.
Blender 5.2 LTS (upstream patch 5.2.3) Flatpak org.blender.Blender Installed.
MPFB 2.0.18 (extension mpfb, declares Blender >= 4.2) Blender extensions platform Installed. Load-and-export check on 5.2 still pending.
Blosm latest release at install time blosm.com / Gumroad Not installed. Version must be recorded before first use.
QGIS 3.44.15 LTR targeted; installed flatpak is 3.28.9 qgis.org / flathub Not a valid pin. The lts flatpak branch is 3.28.9 on an end-of-life Qt5 runtime. Replace via stable or distrobox, then pin. See environment.md.
Git 2.56.0 Bazzite image Installed.
Git LFS 3.7.1 rpm-ostree layer Installed; git lfs install run, lfs filter active.
Host build tools clang 23.1.4, cmake 4.3.0, ninja 1.13.2 rpm-ostree layer Installed. These are host tools, not the engine toolchain.
distrobox 1.8.2.5 Bazzite image Installed.
Python (tooling) 3.14.8 system Bazzite image Installed. Use a venv for geo/tool scripts.
ffmpeg 8.1.3 Bazzite image Installed.

Unreal Engine 5.9 is in preview and Unreal Engine 6 has been announced as of November 2026. Neither is a pin candidate for 0.x. One engine family per milestone; a family change is a breaking change and belongs in CHANGELOG.md.

Pin rules

  • One engine build per release. Record the launcher or source build, the patch version, and the build date in this file and in the release entry.
  • Blender stays on an LTS family (5.2). Every add-on version used for a shipped asset is recorded here.
  • Upgrading a pinned tool mid-milestone requires re-running the scale test and the Blender→Unreal import check before further asset work.
  • Never install a tool from an unverified source. Record the download origin next to the version.

Open compatibility risks

  1. Blosm on Blender 5.2. Blosm versions historically lag Blender releases. Verify Blosm against the installed Blender 5.2 before the blockout step. If it fails, add a side-by-side Blender 4.5 LTS Flatpak and convert that step's output only; do not mix Blender versions within one asset.
  2. MPFB 2.0.18 on Blender 5.2. The extension declares Blender >= 4.2 but predates 5.x. The acceptance test is the 0.1.0 requirement to export one MPFB character with baked materials and a deform skeleton and import it into Unreal.
  3. QGIS flatpak tracks a stale LTR. The flathub lts branch is 3.28.9 (2022) on org.kde.Platform 5.15-21.08, which is end-of-life. A 2022 QGIS still converts CRS and edits vectors correctly, but its PROJ/GDAL data and processing algorithms are four years behind the current LTR, and the runtime gets no security fixes. Replace it before the geo pipeline depends on it; record whichever version ends up pinned.
  4. Driver and Vulkan validation on Bazzite. Not an officially supported Unreal distribution. Validate before asset production, as ROADMAP.md requires.