Repository navigation
Releases
qemu-11.1.0-luma.1
build: Build and bundle QEMU for Windows Extract with shortcuts, since the tarball's dangling symlinks defeat MSYS2's habit of copying what one points at, and install base-devel for the make and diff that meson and the build itself want. Build the arm64 flavour on an arm64 runner under CLANGARM64, name the archive after the arch -- the MSYS2 runtime is x86_64 whatever it builds for -- and stage it into that installer too.
shader-toolchain-2
building glslang for macos
-- The C compiler identification is AppleClang 21.0.0.21000101
-- The CXX compiler identification is AppleClang 21.0.0.21000101
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- spirv-tools not linked - illegal SPIRV may be generated for HLSL
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Python3: /opt/homebrew/Frameworks/Python.framework/Versions/3.14/bin/python3.14 (found version "3.14.6") found components: Interpreter
-- Configuring done (8.0s)
-- Generating done (0.8s)
-- Build files have been written to: /Users/runner/work/luma/luma/build/shader-toolchain/glslang/build-macos
[ 1%] Building CXX object SPIRV/CMakeFiles/SPIRV.dir//glslang/stub.cpp.o
[ 2%] Linking CXX static library libSPIRV.a
[ 2%] Built target SPIRV
[ 4%] Building CXX object SPIRV/CMakeFiles/SPVRemapper.dir/SPVRemapper.cpp.o
[ 5%] Building CXX object SPIRV/CMakeFiles/SPVRemapper.dir/doc.cpp.o
[ 7%] Linking CXX static library libSPVRemapper.a
[ 7%] Built target SPVRemapper
[ 8%] Building CXX object glslang/CMakeFiles/GenericCodeGen.dir/stub.cpp.o
[ 10%] Linking CXX static library libGenericCodeGen.a
[ 10%] Built target GenericCodeGen
[ 11%] Building CXX object glslang/CMakeFiles/MachineIndependent.dir/stub.cpp.o
[ 12%] Linking CXX static library libMachineIndependent.a
[ 12%] Built target MachineIndependent
[ 14%] Building CXX object glslang/CMakeFiles/glslang.dir/cmake_pch_x86_64.hxx.pch
[ 15%] Building CXX object glslang/CMakeFiles/glslang.dir/cmake_pch_arm64.hxx.pch
[ 17%] Building CXX object glslang/CMakeFiles/glslang.dir/CInterface/glslang_c_interface.cpp.o
[ 18%] Building CXX object glslang/CMakeFiles/glslang.dir/GenericCodeGen/CodeGen.cpp.o
[ 20%] Building CXX object glslang/CMakeFiles/glslang.dir/GenericCodeGen/Link.cpp.o
[ 21%] Building CXX object glslang/CMakeFiles/glslang.dir/OSDependent/Unix/ossource.cpp.o
[ 22%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/glslang_tab.cpp.o
[ 24%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/attribute.cpp.o
[ 25%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Constant.cpp.o
[ 27%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/iomapper.cpp.o
[ 28%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/InfoSink.cpp.o
[ 30%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Initialize.cpp.o
[ 31%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/IntermTraverse.cpp.o
[ 32%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Intermediate.cpp.o
[ 34%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/ParseContextBase.cpp.o
[ 35%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/ParseHelper.cpp.o
[ 37%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/PoolAlloc.cpp.o
[ 38%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/RemoveTree.cpp.o
[ 40%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Scan.cpp.o
[ 41%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/ShaderLang.cpp.o
[ 42%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/SpirvIntrinsics.cpp.o
[ 44%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/SymbolTable.cpp.o
[ 45%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Versions.cpp.o
[ 47%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/intermOut.cpp.o
[ 48%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/limits.cpp.o
[ 50%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/linkValidate.cpp.o
[ 51%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/parseConst.cpp.o
[ 52%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/reflection.cpp.o
[ 54%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/Pp.cpp.o
[ 55%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpAtom.cpp.o
[ 57%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpContext.cpp.o
[ 58%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpScanner.cpp.o
[ 60%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpTokens.cpp.o
[ 61%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/propagateNoContraction.cpp.o
[ 62%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslAttributes.cpp.o
[ 64%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslParseHelper.cpp.o
[ 65%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslScanContext.cpp.o
[ 67%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslOpMap.cpp.o
[ 68%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslTokenStream.cpp.o
[ 70%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslGrammar.cpp.o
[ 71%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslParseables.cpp.o
[ 72%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/GlslangToSpv.cpp.o
[ 74%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/InReadableOrder.cpp.o
[ 75%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/Logger.cpp.o
[ 77%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/SpvBuilder.cpp.o
[ 78%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/SpvPostProcess.cpp.o
[ 80%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/doc.cpp.o
[ 81%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/SpvTools.cpp.o
[ 82%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/disassemble.cpp.o
[ 84%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/CInterface/spirv_c_interface.cpp.o
[ 85%] Linking CXX static library libglslang.a
[ 85%] Built target glslang
[ 87%] Building CXX object glslang/CMakeFiles/glslang-default-resource-limits.dir/ResourceLimits/ResourceLimits.cpp.o
[ 88%] Building CXX object glslang/CMakeFiles/glslang-default-resource-limits.dir/ResourceLimits/resource_limits_c.cpp.o
[ 90%] Linking CXX static library libglslang-default-resource-limits.a
[ 90%] Built target glslang-default-resource-limits
[ 91%] Building CXX object glslang/OSDependent/Unix/CMakeFiles/OSDependent.dir///stub.cpp.o
[ 92%] Linking CXX static library libOSDependent.a
[ 92%] Built target OSDependent
[ 94%] Generating /Users/runner/work/luma/luma/build/shader-toolchain/glslang/build-macos/include/glslang/glsl_intrinsic_header.h
[ 95%] Building CXX object StandAlone/CMakeFiles/glslang-standalone.dir/StandAlone.cpp.o
[ 97%] Linking CXX executable glslang
[ 97%] Built target glslang-standalone
[ 98%] Building CXX object StandAlone/CMakeFiles/spirv-remap.dir/spirv-remap.cpp.o
[100%] Linking CXX executable spirv-remap
[100%] Built target spirv-remap
Install the project...
-- Install configuration: "Release"
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/lib/libSPVRemapper.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/lib/libSPIRV.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/SPIRV/GlslangToSpv.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/SPIRV/disassemble.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/SPIRV/Logger.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/SPIRV/spirv.hpp11
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/SPIRV/SPVRemapper.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/SPIRV/SpvTools.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/lib/libOSDependent.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/lib/libglslang.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/lib/libMachineIndependent.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/lib/libGenericCodeGen.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/Public/ResourceLimits.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/Public/ShaderLang.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/Public/resource_limits_c.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/Include/glslang_c_interface.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/Include/glslang_c_shader_types.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/Include/ResourceLimits.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/Include/visibility.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/MachineIndependent/Versions.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/include/glslang/build_info.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/macos/glslang/lib/libglslang-de...
shader-toolchain-1
building glslang
-- The C compiler identification is AppleClang 21.0.0.21000101
-- The CXX compiler identification is AppleClang 21.0.0.21000101
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- spirv-tools not linked - illegal SPIRV may be generated for HLSL
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Python3: /opt/homebrew/Frameworks/Python.framework/Versions/3.14/bin/python3.14 (found version "3.14.6") found components: Interpreter
-- Configuring done (6.5s)
-- Generating done (0.6s)
-- Build files have been written to: /Users/runner/work/luma/luma/build/shader-toolchain/glslang/build
[ 1%] Building CXX object SPIRV/CMakeFiles/SPIRV.dir//glslang/stub.cpp.o
[ 2%] Linking CXX static library libSPIRV.a
[ 2%] Built target SPIRV
[ 4%] Building CXX object SPIRV/CMakeFiles/SPVRemapper.dir/SPVRemapper.cpp.o
[ 5%] Building CXX object SPIRV/CMakeFiles/SPVRemapper.dir/doc.cpp.o
[ 7%] Linking CXX static library libSPVRemapper.a
[ 7%] Built target SPVRemapper
[ 8%] Building CXX object glslang/CMakeFiles/GenericCodeGen.dir/stub.cpp.o
[ 10%] Linking CXX static library libGenericCodeGen.a
[ 10%] Built target GenericCodeGen
[ 11%] Building CXX object glslang/CMakeFiles/MachineIndependent.dir/stub.cpp.o
[ 12%] Linking CXX static library libMachineIndependent.a
[ 12%] Built target MachineIndependent
[ 14%] Building CXX object glslang/CMakeFiles/glslang.dir/cmake_pch_x86_64.hxx.pch
[ 15%] Building CXX object glslang/CMakeFiles/glslang.dir/cmake_pch_arm64.hxx.pch
[ 17%] Building CXX object glslang/CMakeFiles/glslang.dir/CInterface/glslang_c_interface.cpp.o
[ 18%] Building CXX object glslang/CMakeFiles/glslang.dir/GenericCodeGen/CodeGen.cpp.o
[ 20%] Building CXX object glslang/CMakeFiles/glslang.dir/GenericCodeGen/Link.cpp.o
[ 21%] Building CXX object glslang/CMakeFiles/glslang.dir/OSDependent/Unix/ossource.cpp.o
[ 22%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/glslang_tab.cpp.o
[ 24%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/attribute.cpp.o
[ 25%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Constant.cpp.o
[ 27%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/iomapper.cpp.o
[ 28%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/InfoSink.cpp.o
[ 30%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Initialize.cpp.o
[ 31%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/IntermTraverse.cpp.o
[ 32%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Intermediate.cpp.o
[ 34%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/ParseContextBase.cpp.o
[ 35%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/ParseHelper.cpp.o
[ 37%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/PoolAlloc.cpp.o
[ 38%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/RemoveTree.cpp.o
[ 40%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Scan.cpp.o
[ 41%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/ShaderLang.cpp.o
[ 42%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/SpirvIntrinsics.cpp.o
[ 44%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/SymbolTable.cpp.o
[ 45%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/Versions.cpp.o
[ 47%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/intermOut.cpp.o
[ 48%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/limits.cpp.o
[ 50%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/linkValidate.cpp.o
[ 51%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/parseConst.cpp.o
[ 52%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/reflection.cpp.o
[ 54%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/Pp.cpp.o
[ 55%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpAtom.cpp.o
[ 57%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpContext.cpp.o
[ 58%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpScanner.cpp.o
[ 60%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/preprocessor/PpTokens.cpp.o
[ 61%] Building CXX object glslang/CMakeFiles/glslang.dir/MachineIndependent/propagateNoContraction.cpp.o
[ 62%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslAttributes.cpp.o
[ 64%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslParseHelper.cpp.o
[ 65%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslScanContext.cpp.o
[ 67%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslOpMap.cpp.o
[ 68%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslTokenStream.cpp.o
[ 70%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslGrammar.cpp.o
[ 71%] Building CXX object glslang/CMakeFiles/glslang.dir/HLSL/hlslParseables.cpp.o
[ 72%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/GlslangToSpv.cpp.o
[ 74%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/InReadableOrder.cpp.o
[ 75%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/Logger.cpp.o
[ 77%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/SpvBuilder.cpp.o
[ 78%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/SpvPostProcess.cpp.o
[ 80%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/doc.cpp.o
[ 81%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/SpvTools.cpp.o
[ 82%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/disassemble.cpp.o
[ 84%] Building CXX object glslang/CMakeFiles/glslang.dir//SPIRV/CInterface/spirv_c_interface.cpp.o
[ 85%] Linking CXX static library libglslang.a
[ 85%] Built target glslang
[ 87%] Building CXX object glslang/CMakeFiles/glslang-default-resource-limits.dir/ResourceLimits/ResourceLimits.cpp.o
[ 88%] Building CXX object glslang/CMakeFiles/glslang-default-resource-limits.dir/ResourceLimits/resource_limits_c.cpp.o
[ 90%] Linking CXX static library libglslang-default-resource-limits.a
[ 90%] Built target glslang-default-resource-limits
[ 91%] Building CXX object glslang/OSDependent/Unix/CMakeFiles/OSDependent.dir///stub.cpp.o
[ 92%] Linking CXX static library libOSDependent.a
[ 92%] Built target OSDependent
[ 94%] Generating /Users/runner/work/luma/luma/build/shader-toolchain/glslang/build/include/glslang/glsl_intrinsic_header.h
[ 95%] Building CXX object StandAlone/CMakeFiles/glslang-standalone.dir/StandAlone.cpp.o
[ 97%] Linking CXX executable glslang
[ 97%] Built target glslang-standalone
[ 98%] Building CXX object StandAlone/CMakeFiles/spirv-remap.dir/spirv-remap.cpp.o
[100%] Linking CXX executable spirv-remap
[100%] Built target spirv-remap
Install the project...
-- Install configuration: "Release"
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/lib/libSPVRemapper.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/lib/libSPIRV.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/SPIRV/GlslangToSpv.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/SPIRV/disassemble.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/SPIRV/Logger.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/SPIRV/spirv.hpp11
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/SPIRV/SPVRemapper.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/SPIRV/SpvTools.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/lib/libOSDependent.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/lib/libglslang.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/lib/libMachineIndependent.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/lib/libGenericCodeGen.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/Public/ResourceLimits.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/Public/ShaderLang.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/Public/resource_limits_c.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/Include/glslang_c_interface.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/Include/glslang_c_shader_types.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/Include/ResourceLimits.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/Include/visibility.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/MachineIndependent/Versions.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/include/glslang/build_info.h
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/lib/libglslang-default-resource-limits.a
-- Installing: /Users/runner/work/luma/luma/Vendor/shader-toolchain/glslang/bin/glslang
-- Installing (create_symlink): glslang ->...
1.2.3
gtk: Fix listbox clear loops Re-read firstChild after each removal instead of caching the next sibling, which broke the WidgetRef-to-Widget snapshot and left a stale pointer when a header func regenerates neighbours.
1.2.2
Fixes
- GTK: sidebar group rows reconcile on a later turn, since removing
and inserting rows mid-emission faulted inside GTK. - GTK: the browse popover pops up after the list-row signal that
opened it finishes emitting, avoiding a fault from grabbing and
reparenting mid-emission (#14). - Flatpak: app libraries install under
/app/libso frida-core is
found — Flatpak's ld searches/app/lib, not/app/lib64(#11).
1.2.1
Module symbols at scale
- Symbol lists are paginated and served from a cached, pre-sorted,
pre-lowercased index in the agent. Modules that export 100k+ symbols
(e.g. YouTube Kids) no longer stall the UI: both frontends query
filtered, capped pages with a debounced filter instead of
marshalling and re-filtering the whole set on every keystroke. - Prev/next controls step through pages showing the current range;
Cmd+F (Ctrl+F on GTK) focuses the filter. - GTK virtualizes the list with a
GtkListViewthat recycles row
widgets, replacing theListBoxthat materialized every row and
lost filter focus on each rebuild. - macOS table selection is stable when symbols share name+address
(aliases, mapping symbols, empty names); rows are identified by
position. - Imports are deduped by name and origin, so a symbol with several
binding slots surfaces once.
ITrace
- A single per-device drain script (
SystemDrainService) serves every
target on a device through one PID 0 script, instead of one attach
and script per target; it retires when the last node goes away. - The system-session drain runs under QuickJS.
Windows
- WebView2 stores its user-data folder under
LOCALAPPDATA, so the
editor no longer spins forever when installed under Program Files
(the default folder next to the exe is read-only there). - The hex view uses Consolas, since Cairo's toy "monospace" resolves
to a proportional DWrite font on Windows and overflowed the cells.
Fixes
- Spawns in progress show a Spawning… progress spinner instead of
falling through to the idle "not waiting for a launch" banner. - GTK no longer commits a spawn on app-row activation — the explicit
Spawn button commits, matching the SwiftUI app list. - Fixed a crash stripping CRLF from process output (
\r\nis a single
grapheme, soremoveLast(2)overran). - Rerooted system modules are classified correctly on jailbroken iOS
(dyld under/cores/usr/lib) and Android (/system,/apex,
/vendor,/product,/system_ext).
Build
- The agent staging directory is no longer bundled into LumaCore's
resource bundle (~3 MB of scratch space). @types/frida-gumbumped to 19.8.0; SwiftPango bumped to drop a bad
constant.
1.2.0
Windows GTK frontend
- The Monaco editor renders on Windows via off-screen WebView2
capture, fixing the "airspace" problem where its native child HWND
painted over GTK dialogs and overlays. WebView2 composites into a
DirectComposition visual on a hidden window,Windows.Graphics.Capture
streams the pixels back as BGRA frames, and they draw as an ordinary
GdkTexture— so the editor composes with popovers, dialogs, and
overlays at any z-order. The WebView2 lifecycle and its capture run
on a dedicated STA worker thread with its own message pump. - The editor reloads correctly after being reparented between panes,
which destroys and recreates the underlying WebView2. - Windows build automation: MSI packager gains
-StageOnly,run.ps1
launches the built app and logs stderr, LumaGtk links in one pass,
Adwaita icons stage for local runs, and CI builds LumaGtk via the
Windows script. - Editor accelerators forward to GTK, and Alt+F4 closes the window
from the editor.
Module symbols
- Exports, imports, and symbols are sorted alphabetically.
- Exports, imports, and symbols can be filtered in both frontends. Thanks to
Jeroen Beckers (@TheDauntless). - GTK shows a context menu for unresolved imports, acting on the
IAT/GOT slot as data when the target address is missing.
Missions
- A second OpenAI-compatible provider: the local and URL providers
fold into one configurableOpenAICompatibleProviderso a remote
endpoint can sit alongside the local one, with optional API keys and
duplicate/v1segments collapsed. Streamed replies stay visible
until the turn is persisted, so navigating away and back no longer
drops the latest reply. Thanks to Sunwoo Moon (@eunhhu).
REPL & instruments
- JavaScript scope persists across REPL evaluations: declarations run
through indirect eval so they land on the global object, and a
leadinglet/constis rewritten tovar, matching the Node REPL. - Tracer hook globals are declared for type checking, so
defineHandlerambients resolve without leaking into package and
custom-instrument compiles. - Compiler diagnostics surface on failure instead of the opaque
LumaCore.CompileFailure error 1.
Fixes & internals
- Sessions appear already attaching instead of flashing the detached
banner: construction, phase, and surfacing move into
prepareSpawnSession/prepareAttachSession. - GTK frontend migrated to gir2swift's native enum wrapper types.
- Generated files are written only when changed.
Packaging
- CI updates the extracted
package.nixrather thanflake.nix.
Thanks to @starkodder.
1.1.1
REPL
- The JS REPL now shares scope across evaluations — each submission runs through indirect eval so declarations land on the global object and persist, with a leading
let/constrewritten tovarso it survives too, matching the Node REPL.
Missions
- A second OpenAI-compatible provider: the local and URL providers fold into one configurable
OpenAICompatibleProvider, so a remote endpoint can be set alongside the local one. The mission sheet accepts optional API keys for compatible providers, and duplicate/v1segments collapse when building request URLs. Thanks @eunhhu! - The latest streamed mission reply stays visible until it is persisted — the live assistant text now clears on an explicit
liveTextClearedevent emitted once the turn is saved, rather than onmessageStop/finalMessage, so navigating away and back no longer drops it. Thanks @eunhhu!
Fixes & internals
- Compiler diagnostics surface on failure:
CompileFailureconforms toLocalizedError, so the underlying message and collected diagnostics reach the user instead of the opaque "LumaCore.CompileFailure error 1" default. - Tracer hook globals are declared for type checking — the
defineHandlerambient declarations feed the hook compiler, wrapped in a declare-global module so they stay out of package and custom-instrument compiles that share the workspace root. - The Nix version-bump automation is fixed.
1.1.0
r2 in the REPL (new)
The REPL gains radare2 as a first-class language alongside JavaScript.
The prompt is a clickable mode toggle, and :, :r2, :js switch
from the keyboard. r2 input routes through the session disassembler
and renders JSON commands as an inspectable value tree, everything
else as ANSI-parsed styled text.
- Autocompletion for both languages: r2 commands complete via r2's
own help tree and arguments against flag and symbol names; JS
completions are annotated with Frida types from the embedded
frida-gum typings. px/xhexdumps render in the interactive hex view with real
addresses; r2 results keep their colors when pinned to the
notebook.- The REPL seeds its seek to the main module base on open, and
persists the r2 seek as an address anchor that re-bases across runs. - Output and prompt reworked: long lines scroll horizontally instead
of wrapping, long text reveals in chunks with show-more / show-all,
the prompt is a single mode-colored glyph, and the empty state
shows a per-mode example.
Markdown rendering (new)
A block-level Markdown renderer ported into LumaCore and shared by
both frontends: headings, lists, tables, task lists, blockquotes,
code blocks, and footnotes, with inline spans, LaTeX-to-Unicode
rewriting, and StyledText code highlighting. Based on code by
@trufae.
Sidebar: modules & threads
- Modules and threads move from tabs into collapsible sidebar groups
that mirror the hooks UX — a few top picks plus a browse popover
for the rest, with threads collapsed by default. One sidebar-row
and one browser-popover component is now shared across hooks,
modules, and threads in both frontends. - Instrument hooks get a disclosure chevron with per-instrument
collapsed state persisted in session UI state. - Module analysis is lazy with a per-module Analyze action and status
indicator; persisted analyses replay into a fresh r2 core on attach
to restore last session's warm state without blocking. - Program modules group ahead of system ones.
Disassembly
- Hex address operands are clickable for the pointer actions while
the rest of the line stays selectable; the reread/reanalyze buttons
overlay instead of pushing content down. - First-view disassembly analyzes the function on demand so it stops
at the function end instead of overshooting, and draws jump/call
flow arrows sourced frompdj/pDj. - Fixed operand address context menus that the system selection menu
was hiding (macOS) or opening alongside (GTK).
Collaboration
- The redundant "driver" seat is gone; session interaction gates on
ownership. Hosting is claimed through an acknowledged request and
attaches only once the server accepts, instead of optimistically.
Spawn/attach/re-attach controls gate on owner + lab-joined + seat
free, and re-attach is disabled while offline. - Host-ownership checks resolve before the collaboration bus connects
viaEngine.localUserID(falling back to the GitHub identity), so
the banner, REPL, and host badge are correct before reconnect. - Token poll retries on transient network loss, so switching to the
browser to authorize on iOS no longer kills sign-in.
Fixes & internals
- Existing project databases gain the REPL, seek, and styled-notebook
columns on open — create-if-not-exists never altered shipped
tables, so saves failed. - Custom instrument handling hardened; runtime parsing and rendering
guarded; mission transcript updates throttled and context reads
optimized; agent bundles generated through a SwiftPM plugin. Thanks
to Sunwoo Moon (@eunhhu). - JS REPL completion no longer dumps global scope; out-of-range JS
numbers no longer trap.
Packaging
- The Nix flake exposes an overlay and extracts
package.nixso the
package can be consumed standalone. Thanks to Abhi (@AbhiTheModder).
1.0.4
Collaboration
- Join labs from
https://luma.frida.re/l/<code>invite links
alongside theluma://scheme. iOS delivers universal links via
NSUserActivityand opens a project from the welcome screen to
consume the join queue; the associated-domains entitlement is added
on iOS and macOS.
Fixes
- Notes & AI chat stay open while approving a tool call. Approve and
reject now appear inline in the address-note chat with the tool's
code preview, and the global action-queue popover no longer evicts
the chat for ambient note-reply actions. In-flight reply text is
tracked on the engine so it survives the chat closing and restores
on reopen. On GTK the chat is hosted in anAdw.Dialogso it can
stay open while the reply streams. - Only locally created notes auto-enter edit mode — empty new notes
broadcast immediately, so previously every client auto-edited. - REPL input no longer re-steals focus after resigning first
responder, which had interrupted lab-title editing.