#2264

[BUG] [Linux ARM64 / Steam Frame] Crash loading models; DISABLE_GAMESCOPE_WSI=1 fixes it

Openvarunpramanikopened 19d ago

Bug Description

Handy launches on my Steam Frame headset, but freezes briefly and crashes when loading a model after its download completes.

Steps to reproduce:

  1. Launch the official Linux ARM64 AppImage with the default Auto accelerator setting.
  2. Select a model in the initial model picker.
  3. Wait for the download to complete.
  4. Handy crashes when it begins loading the model.

This occurred with both:

  • nemotron-3.5-asr-streaming-0.6b-Q8_0.gguf
  • parakeet-unified-en-0.6b-Q8_0.gguf

Confirmed workaround:

Launch Handy with the Gamescope WSI layer disabled for this application:

DISABLE_GAMESCOPE_WSI=1 ./Handy_0.9.8_aarch64.AppImage

This allowed model loading and speech-to-text to work. I also added the environment variable to my application launcher entry, quit Handy, and confirmed transcription works after relaunching.

Could this workaround be documented for SteamOS/Gamescope users? It may also be worth investigating whether Handy can safely avoid this layer during Vulkan compute initialization.

Potentially related upstream issue: https://github.com/ValveSoftware/gamescope/issues/2261

I have not established whether that issue has the exact same underlying cause.

System Information

App Version:

Handy 0.9.8 using the official Linux ARM64 (aarch64) AppImage.

Operating System:

SteamOS 0.4.5, variant vr, build 20261007.6125817, running on a Steam Frame headset.

  • KDE/Wayland desktop session
  • Gamescope package: 3.16.28-2

CPU:

Qualcomm SM8650 platform, ARM64 (aarch64), 8 logical CPUs.

GPU:

Qualcomm Adreno 750, using the Turnip Mesa Vulkan driver.

Mesa package: deckard-mesa-linux-aarch64 26.3.0_devel+gitabc426bb-1

Logs

Handy's application log confirms both downloads completed successfully. Each failed attempt stops shortly after Starting to load model.

Relevant excerpt from the Parakeet attempt:

[2026-10-11][19:31:01][handy_app_lib::managers::transcription][INFO] transcribe-cpp initialized with 2 compute device(s): [Vulkan0 (vulkan), CPU (cpu)]
[2026-10-11][19:31:04][handy_app_lib::managers::transcription][INFO] transcribe.cpp accelerator preference: Auto (applied on next model load)
[2026-10-11][19:31:04][handy_app_lib::managers::transcription][DEBUG] Starting to load model: handy-computer/parakeet-unified-en-0.6b-gguf/parakeet-unified-en-0.6b-Q8_0.gguf

The system crash report records SIGABRT, with an assertion failure inside libVkLayer_FROG_gamescope_wsi_aarch64.so.

Abbreviated crashing-thread stack, with addresses and temporary mount paths omitted:

__pthread_kill_implementation
__GI_raise
__GI_abort
__assert_fail_base
__assert_fail
libVkLayer_FROG_gamescope_wsi_aarch64.so
libvulkan.so.1
...
libggml-vulkan.so
libggml-vulkan.so
libtranscribe.so.0.2

The Nemotron crash report shows the same assertion-failure location in the Gamescope WSI layer.

Activity

0

No activity yet.