[GH-ISSUE #301] Wolf fails to create CUDA/DMA buffers on Arch Linux + NVIDIA + Wayland (Hyprland) #213

Closed
opened 2026-10-15 12:58:17 +00:00 by bsakaguchi · 9 comments
Owner

Originally created by @flathead on GitHub (Nov 25, 2025).
Original GitHub issue: https://github.com/games-on-whales/wolf/issues/301

Description

Wolf fails to start streaming sessions with a black screen, followed by container crashes. The root cause is waylanddisplaysrc failing to create GsCUDABuf and DMA buffers.

Environment

  • OS: Arch Linux (kernel 6.12.1-arch1-1)
  • GPU: NVIDIA GeForce RTX 4070 SUPER
  • Driver: nvidia 565.57.01
  • Compositor: Hyprland (Wayland)
  • Wolf version: ghcr.io/games-on-whales/wolf:stable
  • Docker: 27.3.1
  • nvidia-container-toolkit: Latest

System Configuration

# nvidia-drm modeset enabled
$ cat /sys/module/nvidia_drm/parameters/modeset
Y

# DRI devices present
$ ls -la /dev/dri/
crw-rw----+ 226,1   card1
crw-rw-rw-  226,128 renderD128

# NVIDIA devices present
$ ls /dev/nvidia*
/dev/nvidia0  /dev/nvidiactl  /dev/nvidia-modeset  /dev/nvidia-uvm  /dev/nvidia-uvm-tools

Docker Compose Configuration

version: "3"
services:
  wolf:
    image: ghcr.io/games-on-whales/wolf:stable
    environment:
      - NVIDIA_DRIVER_CAPABILITIES=all
      - NVIDIA_VISIBLE_DEVICES=all
      - NVIDIA_DRIVER_VOLUME_NAME=nvidia-driver-vol
    volumes:
      - /etc/wolf/:/etc/wolf:rw
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /dev/:/dev/:rw
      - /run/udev:/run/udev:rw
      - nvidia-driver-vol:/usr/nvidia:rw
    devices:
      - /dev/dri/card1
      - /dev/dri/renderD128
      - /dev/uinput
      - /dev/uhid
      - /dev/nvidia0
      - /dev/nvidiactl
      - /dev/nvidia-modeset
      - /dev/nvidia-uvm
      - /dev/nvidia-uvm-tools
    device_cgroup_rules:
      - 'c 13:* rmw'
      - 'c 195:* rmw'
      - 'c 226:* rmw'
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
    network_mode: host
    restart: unless-stopped

volumes:
  nvidia-driver-vol:
    external: true

Steps to Reproduce

  1. Set up Arch Linux with NVIDIA proprietary drivers
  2. Enable nvidia-drm.modeset=1 kernel parameter
  3. Create nvidia-driver-vol: docker volume create nvidia-driver-vol
  4. Start Wolf with the configuration above
  5. Pair Moonlight client
  6. Attempt to connect and start any application

Expected Behavior

  • Wolf creates Wayland compositor successfully
  • CUDA context initializes
  • GStreamer pipeline captures video from waylanddisplaysrc
  • Moonlight displays the streamed application

Actual Behavior

  • Moonlight shows black screen for ~3 seconds
  • Wolf crashes with panic in waylanddisplaysrc
  • Container restarts continuously

Error Logs

Critical Errors

2025-11-25T18:54:12.063489Z  WARN waylanddisplaycore::utils::allocator: Failed to create DMA buffer: No such file or directory (os error 2)

thread '<unnamed>' (295) panicked at wayland-display-core/src/comp/mod.rs:374:34:
Failed to create GsCUDABuf

Full Stack Trace

stack backtrace:
   0:     0x7fca1c7a7982 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::haa87a551a4affa55
   1:     0x7fca1c7ba70f - core::fmt::write::h80461e1e45e4fdd2
   2:     0x7fca1c781b11 - std::io::Write::write_fmt::h6e6c69b2d6337d9b
   3:     0x7fca1c788022 - std::sys::backtrace::BacktraceLock::print::hf67a46baa621998e
   4:     0x7fca1c78ac2f - std::panicking::default_hook::{{closure}}::h391aa815d5e47ec8
   5:     0x7fca1c78aa89 - std::panicking::default_hook::hd6fdcf2489bb807d
   6:     0x7fca1c78b2b5 - std::panicking::panic_with_hook::h185ddfb86bf14d73
   7:     0x7fca1c78b14a - std::panicking::panic_handler::{{closure}}::had89ddd01b6112c9
   8:     0x7fca1c788159 - std::sys::backtrace::__rust_end_short_backtrace::h5d0fc36eef7265ea
   9:     0x7fca1c7758ed - __rustc[eb8946e36839644a]::rust_begin_unwind
  10:     0x7fca1c7c2f70 - core::panicking::panic_fmt::h92c8e5abe71dd8d1
  11:     0x7fca1c7c23db - core::option::expect_failed::h1729d0bd73171c50
  12:     0x7fca1c614ca7 - waylanddisplaycore::comp::init::{{closure}}::hbc3fd0f596208561
  13:     0x7fca1c625822 - <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events::h3c277d60bf34ab4f
  14:     0x7fca1c610224 - <calloop::sources::channel::Channel<T> as calloop::sources::EventSource>::process_events::h3c937bb4539dc400
  15:     0x7fca1c5b4efc - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hec1de422486acbaf
  16:     0x7fca1c5a4411 - calloop::loop_logic::EventLoop<Data>::run::hd091212962e09e72
  17:     0x7fca1c5b87ff - waylanddisplaycore::comp::init::hcc5e4ff338379eb8
  18:     0x7fca1c59f7ac - std::sys::backtrace::__rust_begin_short_backtrace::h7766e7f97cfbd0c9
  19:     0x7fca1c60b83a - core::ops::function::FnOnce::call_once{{vtable.shim}}::he9c15249a5d27784
  20:     0x7fca1c78772f - std::sys::thread::unix::Thread::new::thread_start::h10345b7e8309cb92
  21:     0x7fca344c37f1 - <unknown>
  22:     0x7fca34554944 - __clone

GStreamer Pipeline Error

0:00:31.862336182     1 0x7fc9b0001030 WARN       waylanddisplaysrc wayland-display-core/src/lib.rs:267:waylanddisplaycore: message = Failed to recv buffer ack.; err = RecvError; 
0:00:31.862340301     1 0x7fc9b0001030 WARN                 basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: Internal data stream error.
18:54:12.067528042 ERROR | [GSTREAMER] Pipeline error: Internal data stream error.

NVIDIA EGL Platform Error

[2025-11-25 18:30:24] [nvidia] Add EGL external platform
cp: cannot create regular file '/usr/share/egl/egl_external_platform.d/10_nvidia_wayland.json': Read-only file system
cp: cannot create regular file '/usr/share/egl/egl_external_platform.d/15_nvidia_gbm.json': Read-only file system

Attempted Solutions

  1. ✅ Confirmed nvidia-drm.modeset=1 is set
  2. ✅ Added all required /dev/dri/, /dev/nvidia* devices
  3. ✅ Added /run/udev:/run/udev:rw mount
  4. ✅ Created nvidia-driver-vol and mounted it
  5. ✅ Added device_cgroup_rules for input, nvidia, and dri devices
  6. ✅ Verified CUDA context creation succeeds: Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0)
  7. ❌ Tried adding tmpfs: /usr/share/egl:rw - still read-only error
  8. ❌ Tried adding volume for /usr/share/egl - still read-only error

Additional Context

waylanddisplaysrc Plugin Info

$ docker exec -it wolf gst-inspect-1.0 waylanddisplaysrc
Factory Details:
  Rank                     marginal (64)
  Long-name                Wayland display source
  Description              GStreamer video src running a wayland compositor

Pad Templates:
  SRC template: 'src'
    Capabilities:
      video/x-raw(memory:DMABuf)
      video/x-raw(memory:CUDAMemory)

Element Properties:
  cuda-device-id      : CUDA Device ID to use
  render-node         : DRM Render Node to use (e.g. /dev/dri/renderD128)

Device Access in Container

$ docker exec -it wolf ls -la /dev/dri/
crw-rw----+  1 root  984 226,   1 card1
crw-rw-rw-   1 root  988 226, 128 renderD128

$ docker exec -it wolf ls -la /dev/nvidia*
crw-rw-rw- 1 root root 195,   0 /dev/nvidia0
crw-rw-rw- 1 root root 195, 255 /dev/nvidiactl
crw-rw-rw- 1 root root 195, 254 /dev/nvidia-modeset
crw-rw-rw- 1 root root 236,   0 /dev/nvidia-uvm
crw-rw-rw- 1 root root 236,   1 /dev/nvidia-uvm-tools

Full logs

18:54:11.974115898 INFO  | Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0)
0:00:31.841348903     1 0x7fc9d0019d50 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues.
0:00:31.841356432     1 0x7fc9d0019d50 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for  the processing deadline of 0:00:00.020000000, add enough queues to buffer  0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
18:54:12.046549316 INFO  | Wayland display ready, listening on: wayland-1
18:54:12.057880991 INFO  | NVIDIA_DRIVER_VOLUME_NAME not set, assuming nvidia driver toolkit is installed..
18:54:12.058367380 WARN  | [DOCKER] Image ghcr.io/games-on-whales/wolf-ui:main not present, downloading...
2025-11-25T18:54:12.063489Z  WARN waylanddisplaycore::utils::allocator: Failed to create DMA buffer: No such file or directory (os error 2)

thread '<unnamed>' (295) panicked at wayland-display-core/src/comp/mod.rs:374:34:
Failed to create GsCUDABuf
stack backtrace:
   0:     0x7fca1c7a7982 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::haa87a551a4affa55
   1:     0x7fca1c7ba70f - core::fmt::write::h80461e1e45e4fdd2
   2:     0x7fca1c781b11 - std::io::Write::write_fmt::h6e6c69b2d6337d9b
   3:     0x7fca1c788022 - std::sys::backtrace::BacktraceLock::print::hf67a46baa621998e
   4:     0x7fca1c78ac2f - std::panicking::default_hook::{{closure}}::h391aa815d5e47ec8
   5:     0x7fca1c78aa89 - std::panicking::default_hook::hd6fdcf2489bb807d
   6:     0x7fca1c78b2b5 - std::panicking::panic_with_hook::h185ddfb86bf14d73
   7:     0x7fca1c78b14a - std::panicking::panic_handler::{{closure}}::had89ddd01b6112c9
   8:     0x7fca1c788159 - std::sys::backtrace::__rust_end_short_backtrace::h5d0fc36eef7265ea
   9:     0x7fca1c7758ed - __rustc[eb8946e36839644a]::rust_begin_unwind
  10:     0x7fca1c7c2f70 - core::panicking::panic_fmt::h92c8e5abe71dd8d1
  11:     0x7fca1c7c23db - core::option::expect_failed::h1729d0bd73171c50
  12:     0x7fca1c614ca7 - waylanddisplaycore::comp::init::{{closure}}::hbc3fd0f596208561
  13:     0x7fca1c625822 - <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events::h3c277d60bf34ab4f
  14:     0x7fca1c610224 - <calloop::sources::channel::Channel<T> as calloop::sources::EventSource>::process_events::h3c937bb4539dc400
  15:     0x7fca1c5b4efc - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hec1de422486acbaf
  16:     0x7fca1c5a4411 - calloop::loop_logic::EventLoop<Data>::run::hd091212962e09e72
  17:     0x7fca1c5b87ff - waylanddisplaycore::comp::init::hcc5e4ff338379eb8
  18:     0x7fca1c59f7ac - std::sys::backtrace::__rust_begin_short_backtrace::h7766e7f97cfbd0c9
  19:     0x7fca1c60b83a - core::ops::function::FnOnce::call_once{{vtable.shim}}::he9c15249a5d27784
  20:     0x7fca1c78772f - std::sys::thread::unix::Thread::new::thread_start::h10345b7e8309cb92
  21:     0x7fca344c37f1 - <unknown>
  22:     0x7fca34554944 - __clone
0:00:31.862308968     1 0x7fc9b0001030 WARN       waylanddisplaysrc wayland-display-core/src/lib.rs:267:waylanddisplaycore: message = Failed to recv buffer ack.; err = RecvError; 
0:00:31.862336182     1 0x7fc9b0001030 WARN                 basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: Internal data stream error.
0:00:31.862340301     1 0x7fc9b0001030 WARN                 basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: streaming stopped, reason error (-5)
18:54:12.067528042 ERROR | [GSTREAMER] Pipeline error: Internal data stream error.
0:00:31.862493390     1 0x7fc9d0019d50 WARN       waylanddisplaysrc wayland-display-core/src/lib.rs:291:waylanddisplaycore: message = Failed to send stop command: sending on a closed channel; 
18:54:27.257429662 INFO  | [DOCKER] Starting container: /Wolf-UI_13612273788857225832
18:54:27.932313689 INFO  | Stopped container: /Wolf-UI_13612273788857225832
18:54:29.935186878 INFO  | [GSTREAMER] Pipeline reached End Of Stream
0:00:49.730496579     1 0x7fc9a400c780 WARN                audiosrc gstaudiosrc.c:227:audioringbuffer_thread_func:<pulsesrc0> error reading data -1 (reason: Success), skipping segment
18:56:06.065210471 WARN  | [HTTPS] Received resume event from an unregistered session, ip: 192.168.1.80
0:04:09.370050550     1 0x7fc9a4007990 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues.
0:04:09.370057742     1 0x7fc9a4007990 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for  the processing deadline of 0:00:00.020000000, add enough queues to buffer  0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
18:57:49.575242944 INFO  | Wayland display ready, listening on: wayland-2
18:57:49.587027463 INFO  | NVIDIA_DRIVER_VOLUME_NAME not set, assuming nvidia driver toolkit is installed..
2025-11-25T18:57:49.587074Z  WARN waylanddisplaycore::utils::allocator: Failed to create DMA buffer: No such file or directory (os error 2)

thread '<unnamed>' (311) panicked at wayland-display-core/src/comp/mod.rs:374:34:
Failed to create GsCUDABuf
stack backtrace:
   0:     0x7fca1c7a7982 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::haa87a551a4affa55
   1:     0x7fca1c7ba70f - core::fmt::write::h80461e1e45e4fdd2
   2:     0x7fca1c781b11 - std::io::Write::write_fmt::h6e6c69b2d6337d9b
   3:     0x7fca1c788022 - std::sys::backtrace::BacktraceLock::print::hf67a46baa621998e
   4:     0x7fca1c78ac2f - std::panicking::default_hook::{{closure}}::h391aa815d5e47ec8
   5:     0x7fca1c78aa89 - std::panicking::default_hook::hd6fdcf2489bb807d
   6:     0x7fca1c78b2b5 - std::panicking::panic_with_hook::h185ddfb86bf14d73
   7:     0x7fca1c78b14a - std::panicking::panic_handler::{{closure}}::had89ddd01b6112c9
   8:     0x7fca1c788159 - std::sys::backtrace::__rust_end_short_backtrace::h5d0fc36eef7265ea
   9:     0x7fca1c7758ed - __rustc[eb8946e36839644a]::rust_begin_unwind
  10:     0x7fca1c7c2f70 - core::panicking::panic_fmt::h92c8e5abe71dd8d1
  11:     0x7fca1c7c23db - core::option::expect_failed::h1729d0bd73171c50
  12:     0x7fca1c614ca7 - waylanddisplaycore::comp::init::{{closure}}::hbc3fd0f596208561
  13:     0x7fca1c625822 - <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events::h3c277d60bf34ab4f
  14:     0x7fca1c610224 - <calloop::sources::channel::Channel<T> as calloop::sources::EventSource>::process_events::h3c937bb4539dc400
  15:     0x7fca1c5b4efc - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hec1de422486acbaf
  16:     0x7fca1c5a4411 - calloop::loop_logic::EventLoop<Data>::run::hd091212962e09e72
  17:     0x7fca1c5b87ff - waylanddisplaycore::comp::init::hcc5e4ff338379eb8
  18:     0x7fca1c59f7ac - std::sys::backtrace::__rust_begin_short_backtrace::h7766e7f97cfbd0c9
  19:     0x7fca1c60b83a - core::ops::function::FnOnce::call_once{{vtable.shim}}::he9c15249a5d27784
  20:     0x7fca1c78772f - std::sys::thread::unix::Thread::new::thread_start::h10345b7e8309cb92
  21:     0x7fca344c37f1 - <unknown>
  22:     0x7fca34554944 - __clone
0:04:09.383908689     1 0x7fc9b00014f0 WARN       waylanddisplaysrc wayland-display-core/src/lib.rs:267:waylanddisplaycore: message = Failed to recv buffer ack.; err = RecvError; 
0:04:09.383924950     1 0x7fc9b00014f0 WARN                 basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: Internal data stream error.
0:04:09.383927737     1 0x7fc9b00014f0 WARN                 basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: streaming stopped, reason error (-5)
18:57:49.589112373 ERROR | [GSTREAMER] Pipeline error: Internal data stream error.
0:04:09.384065855     1 0x7fc9a4007990 WARN       waylanddisplaysrc wayland-display-core/src/lib.rs:291:waylanddisplaycore: message = Failed to send stop command: sending on a closed channel; 
18:57:49.665127171 INFO  | Creating Xbox joypad for controller 0 in session 13612273788857225832
18:57:50.384235097 INFO  | [DOCKER] Starting container: /Wolf-UI_13612273788857225832
18:57:51.057630606 INFO  | Stopped container: /Wolf-UI_13612273788857225832
18:57:53.060881852 INFO  | [GSTREAMER] Pipeline reached End Of Stream
0:04:12.856048992     1 0x7fc96c028f90 WARN                audiosrc gstaudiosrc.c:227:audioringbuffer_thread_func:<pulsesrc1> error reading data -1 (reason: Success), skipping segment

Questions

  1. Is GBM (Generic Buffer Manager) properly supported with NVIDIA proprietary drivers in waylanddisplaysrc?
  2. Why does DMA buffer creation fail with "No such file or directory" when all DRI devices are present?
  3. Is the read-only /usr/share/egl filesystem issue a known limitation?
  4. Are there any known working configurations for Arch Linux + NVIDIA + Wayland?

Possibly related to:

  • #124 (Nvidia: using container toolkit results in EGL exception)
  • #103 (VAAPI and AMD Issues - mentions grey screen with HEVC)
  • #50 (Corrupted stream with Intel iGPU)
Originally created by @flathead on GitHub (Nov 25, 2025). Original GitHub issue: https://github.com/games-on-whales/wolf/issues/301 ## Description Wolf fails to start streaming sessions with a black screen, followed by container crashes. The root cause is `waylanddisplaysrc` failing to create GsCUDABuf and DMA buffers. ## Environment - **OS**: Arch Linux (kernel 6.12.1-arch1-1) - **GPU**: NVIDIA GeForce RTX 4070 SUPER - **Driver**: nvidia 565.57.01 - **Compositor**: Hyprland (Wayland) - **Wolf version**: `ghcr.io/games-on-whales/wolf:stable` - **Docker**: 27.3.1 - **nvidia-container-toolkit**: Latest ## System Configuration ```bash # nvidia-drm modeset enabled $ cat /sys/module/nvidia_drm/parameters/modeset Y # DRI devices present $ ls -la /dev/dri/ crw-rw----+ 226,1 card1 crw-rw-rw- 226,128 renderD128 # NVIDIA devices present $ ls /dev/nvidia* /dev/nvidia0 /dev/nvidiactl /dev/nvidia-modeset /dev/nvidia-uvm /dev/nvidia-uvm-tools ``` ## Docker Compose Configuration ```yaml version: "3" services: wolf: image: ghcr.io/games-on-whales/wolf:stable environment: - NVIDIA_DRIVER_CAPABILITIES=all - NVIDIA_VISIBLE_DEVICES=all - NVIDIA_DRIVER_VOLUME_NAME=nvidia-driver-vol volumes: - /etc/wolf/:/etc/wolf:rw - /var/run/docker.sock:/var/run/docker.sock:rw - /dev/:/dev/:rw - /run/udev:/run/udev:rw - nvidia-driver-vol:/usr/nvidia:rw devices: - /dev/dri/card1 - /dev/dri/renderD128 - /dev/uinput - /dev/uhid - /dev/nvidia0 - /dev/nvidiactl - /dev/nvidia-modeset - /dev/nvidia-uvm - /dev/nvidia-uvm-tools device_cgroup_rules: - 'c 13:* rmw' - 'c 195:* rmw' - 'c 226:* rmw' deploy: resources: reservations: devices: - driver: nvidia count: all capabilities: [gpu] network_mode: host restart: unless-stopped volumes: nvidia-driver-vol: external: true ``` ## Steps to Reproduce 1. Set up Arch Linux with NVIDIA proprietary drivers 2. Enable `nvidia-drm.modeset=1` kernel parameter 3. Create nvidia-driver-vol: `docker volume create nvidia-driver-vol` 4. Start Wolf with the configuration above 5. Pair Moonlight client 6. Attempt to connect and start any application ## Expected Behavior - Wolf creates Wayland compositor successfully - CUDA context initializes - GStreamer pipeline captures video from waylanddisplaysrc - Moonlight displays the streamed application ## Actual Behavior - Moonlight shows black screen for ~3 seconds - Wolf crashes with panic in waylanddisplaysrc - Container restarts continuously ## Error Logs ### Critical Errors ``` 2025-11-25T18:54:12.063489Z WARN waylanddisplaycore::utils::allocator: Failed to create DMA buffer: No such file or directory (os error 2) thread '<unnamed>' (295) panicked at wayland-display-core/src/comp/mod.rs:374:34: Failed to create GsCUDABuf ``` ### Full Stack Trace ``` stack backtrace: 0: 0x7fca1c7a7982 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::haa87a551a4affa55 1: 0x7fca1c7ba70f - core::fmt::write::h80461e1e45e4fdd2 2: 0x7fca1c781b11 - std::io::Write::write_fmt::h6e6c69b2d6337d9b 3: 0x7fca1c788022 - std::sys::backtrace::BacktraceLock::print::hf67a46baa621998e 4: 0x7fca1c78ac2f - std::panicking::default_hook::{{closure}}::h391aa815d5e47ec8 5: 0x7fca1c78aa89 - std::panicking::default_hook::hd6fdcf2489bb807d 6: 0x7fca1c78b2b5 - std::panicking::panic_with_hook::h185ddfb86bf14d73 7: 0x7fca1c78b14a - std::panicking::panic_handler::{{closure}}::had89ddd01b6112c9 8: 0x7fca1c788159 - std::sys::backtrace::__rust_end_short_backtrace::h5d0fc36eef7265ea 9: 0x7fca1c7758ed - __rustc[eb8946e36839644a]::rust_begin_unwind 10: 0x7fca1c7c2f70 - core::panicking::panic_fmt::h92c8e5abe71dd8d1 11: 0x7fca1c7c23db - core::option::expect_failed::h1729d0bd73171c50 12: 0x7fca1c614ca7 - waylanddisplaycore::comp::init::{{closure}}::hbc3fd0f596208561 13: 0x7fca1c625822 - <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events::h3c277d60bf34ab4f 14: 0x7fca1c610224 - <calloop::sources::channel::Channel<T> as calloop::sources::EventSource>::process_events::h3c937bb4539dc400 15: 0x7fca1c5b4efc - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hec1de422486acbaf 16: 0x7fca1c5a4411 - calloop::loop_logic::EventLoop<Data>::run::hd091212962e09e72 17: 0x7fca1c5b87ff - waylanddisplaycore::comp::init::hcc5e4ff338379eb8 18: 0x7fca1c59f7ac - std::sys::backtrace::__rust_begin_short_backtrace::h7766e7f97cfbd0c9 19: 0x7fca1c60b83a - core::ops::function::FnOnce::call_once{{vtable.shim}}::he9c15249a5d27784 20: 0x7fca1c78772f - std::sys::thread::unix::Thread::new::thread_start::h10345b7e8309cb92 21: 0x7fca344c37f1 - <unknown> 22: 0x7fca34554944 - __clone ``` ### GStreamer Pipeline Error ``` 0:00:31.862336182 1 0x7fc9b0001030 WARN waylanddisplaysrc wayland-display-core/src/lib.rs:267:waylanddisplaycore: message = Failed to recv buffer ack.; err = RecvError; 0:00:31.862340301 1 0x7fc9b0001030 WARN basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: Internal data stream error. 18:54:12.067528042 ERROR | [GSTREAMER] Pipeline error: Internal data stream error. ``` ### NVIDIA EGL Platform Error ``` [2025-11-25 18:30:24] [nvidia] Add EGL external platform cp: cannot create regular file '/usr/share/egl/egl_external_platform.d/10_nvidia_wayland.json': Read-only file system cp: cannot create regular file '/usr/share/egl/egl_external_platform.d/15_nvidia_gbm.json': Read-only file system ``` ## Attempted Solutions 1. ✅ Confirmed `nvidia-drm.modeset=1` is set 2. ✅ Added all required `/dev/dri/`, `/dev/nvidia*` devices 3. ✅ Added `/run/udev:/run/udev:rw` mount 4. ✅ Created `nvidia-driver-vol` and mounted it 5. ✅ Added device_cgroup_rules for input, nvidia, and dri devices 6. ✅ Verified CUDA context creation succeeds: `Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0)` 7. ❌ Tried adding `tmpfs: /usr/share/egl:rw` - still read-only error 8. ❌ Tried adding volume for `/usr/share/egl` - still read-only error ## Additional Context ### waylanddisplaysrc Plugin Info ```bash $ docker exec -it wolf gst-inspect-1.0 waylanddisplaysrc Factory Details: Rank marginal (64) Long-name Wayland display source Description GStreamer video src running a wayland compositor Pad Templates: SRC template: 'src' Capabilities: video/x-raw(memory:DMABuf) video/x-raw(memory:CUDAMemory) Element Properties: cuda-device-id : CUDA Device ID to use render-node : DRM Render Node to use (e.g. /dev/dri/renderD128) ``` ### Device Access in Container ```bash $ docker exec -it wolf ls -la /dev/dri/ crw-rw----+ 1 root 984 226, 1 card1 crw-rw-rw- 1 root 988 226, 128 renderD128 $ docker exec -it wolf ls -la /dev/nvidia* crw-rw-rw- 1 root root 195, 0 /dev/nvidia0 crw-rw-rw- 1 root root 195, 255 /dev/nvidiactl crw-rw-rw- 1 root root 195, 254 /dev/nvidia-modeset crw-rw-rw- 1 root root 236, 0 /dev/nvidia-uvm crw-rw-rw- 1 root root 236, 1 /dev/nvidia-uvm-tools ``` ### Full logs ```bash 18:54:11.974115898 INFO | Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0) 0:00:31.841348903 1 0x7fc9d0019d50 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues. 0:00:31.841356432 1 0x7fc9d0019d50 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 18:54:12.046549316 INFO | Wayland display ready, listening on: wayland-1 18:54:12.057880991 INFO | NVIDIA_DRIVER_VOLUME_NAME not set, assuming nvidia driver toolkit is installed.. 18:54:12.058367380 WARN | [DOCKER] Image ghcr.io/games-on-whales/wolf-ui:main not present, downloading... 2025-11-25T18:54:12.063489Z WARN waylanddisplaycore::utils::allocator: Failed to create DMA buffer: No such file or directory (os error 2) thread '<unnamed>' (295) panicked at wayland-display-core/src/comp/mod.rs:374:34: Failed to create GsCUDABuf stack backtrace: 0: 0x7fca1c7a7982 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::haa87a551a4affa55 1: 0x7fca1c7ba70f - core::fmt::write::h80461e1e45e4fdd2 2: 0x7fca1c781b11 - std::io::Write::write_fmt::h6e6c69b2d6337d9b 3: 0x7fca1c788022 - std::sys::backtrace::BacktraceLock::print::hf67a46baa621998e 4: 0x7fca1c78ac2f - std::panicking::default_hook::{{closure}}::h391aa815d5e47ec8 5: 0x7fca1c78aa89 - std::panicking::default_hook::hd6fdcf2489bb807d 6: 0x7fca1c78b2b5 - std::panicking::panic_with_hook::h185ddfb86bf14d73 7: 0x7fca1c78b14a - std::panicking::panic_handler::{{closure}}::had89ddd01b6112c9 8: 0x7fca1c788159 - std::sys::backtrace::__rust_end_short_backtrace::h5d0fc36eef7265ea 9: 0x7fca1c7758ed - __rustc[eb8946e36839644a]::rust_begin_unwind 10: 0x7fca1c7c2f70 - core::panicking::panic_fmt::h92c8e5abe71dd8d1 11: 0x7fca1c7c23db - core::option::expect_failed::h1729d0bd73171c50 12: 0x7fca1c614ca7 - waylanddisplaycore::comp::init::{{closure}}::hbc3fd0f596208561 13: 0x7fca1c625822 - <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events::h3c277d60bf34ab4f 14: 0x7fca1c610224 - <calloop::sources::channel::Channel<T> as calloop::sources::EventSource>::process_events::h3c937bb4539dc400 15: 0x7fca1c5b4efc - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hec1de422486acbaf 16: 0x7fca1c5a4411 - calloop::loop_logic::EventLoop<Data>::run::hd091212962e09e72 17: 0x7fca1c5b87ff - waylanddisplaycore::comp::init::hcc5e4ff338379eb8 18: 0x7fca1c59f7ac - std::sys::backtrace::__rust_begin_short_backtrace::h7766e7f97cfbd0c9 19: 0x7fca1c60b83a - core::ops::function::FnOnce::call_once{{vtable.shim}}::he9c15249a5d27784 20: 0x7fca1c78772f - std::sys::thread::unix::Thread::new::thread_start::h10345b7e8309cb92 21: 0x7fca344c37f1 - <unknown> 22: 0x7fca34554944 - __clone 0:00:31.862308968 1 0x7fc9b0001030 WARN waylanddisplaysrc wayland-display-core/src/lib.rs:267:waylanddisplaycore: message = Failed to recv buffer ack.; err = RecvError; 0:00:31.862336182 1 0x7fc9b0001030 WARN basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: Internal data stream error. 0:00:31.862340301 1 0x7fc9b0001030 WARN basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: streaming stopped, reason error (-5) 18:54:12.067528042 ERROR | [GSTREAMER] Pipeline error: Internal data stream error. 0:00:31.862493390 1 0x7fc9d0019d50 WARN waylanddisplaysrc wayland-display-core/src/lib.rs:291:waylanddisplaycore: message = Failed to send stop command: sending on a closed channel; 18:54:27.257429662 INFO | [DOCKER] Starting container: /Wolf-UI_13612273788857225832 18:54:27.932313689 INFO | Stopped container: /Wolf-UI_13612273788857225832 18:54:29.935186878 INFO | [GSTREAMER] Pipeline reached End Of Stream 0:00:49.730496579 1 0x7fc9a400c780 WARN audiosrc gstaudiosrc.c:227:audioringbuffer_thread_func:<pulsesrc0> error reading data -1 (reason: Success), skipping segment 18:56:06.065210471 WARN | [HTTPS] Received resume event from an unregistered session, ip: 192.168.1.80 0:04:09.370050550 1 0x7fc9a4007990 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues. 0:04:09.370057742 1 0x7fc9a4007990 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 18:57:49.575242944 INFO | Wayland display ready, listening on: wayland-2 18:57:49.587027463 INFO | NVIDIA_DRIVER_VOLUME_NAME not set, assuming nvidia driver toolkit is installed.. 2025-11-25T18:57:49.587074Z WARN waylanddisplaycore::utils::allocator: Failed to create DMA buffer: No such file or directory (os error 2) thread '<unnamed>' (311) panicked at wayland-display-core/src/comp/mod.rs:374:34: Failed to create GsCUDABuf stack backtrace: 0: 0x7fca1c7a7982 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::haa87a551a4affa55 1: 0x7fca1c7ba70f - core::fmt::write::h80461e1e45e4fdd2 2: 0x7fca1c781b11 - std::io::Write::write_fmt::h6e6c69b2d6337d9b 3: 0x7fca1c788022 - std::sys::backtrace::BacktraceLock::print::hf67a46baa621998e 4: 0x7fca1c78ac2f - std::panicking::default_hook::{{closure}}::h391aa815d5e47ec8 5: 0x7fca1c78aa89 - std::panicking::default_hook::hd6fdcf2489bb807d 6: 0x7fca1c78b2b5 - std::panicking::panic_with_hook::h185ddfb86bf14d73 7: 0x7fca1c78b14a - std::panicking::panic_handler::{{closure}}::had89ddd01b6112c9 8: 0x7fca1c788159 - std::sys::backtrace::__rust_end_short_backtrace::h5d0fc36eef7265ea 9: 0x7fca1c7758ed - __rustc[eb8946e36839644a]::rust_begin_unwind 10: 0x7fca1c7c2f70 - core::panicking::panic_fmt::h92c8e5abe71dd8d1 11: 0x7fca1c7c23db - core::option::expect_failed::h1729d0bd73171c50 12: 0x7fca1c614ca7 - waylanddisplaycore::comp::init::{{closure}}::hbc3fd0f596208561 13: 0x7fca1c625822 - <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events::h3c277d60bf34ab4f 14: 0x7fca1c610224 - <calloop::sources::channel::Channel<T> as calloop::sources::EventSource>::process_events::h3c937bb4539dc400 15: 0x7fca1c5b4efc - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hec1de422486acbaf 16: 0x7fca1c5a4411 - calloop::loop_logic::EventLoop<Data>::run::hd091212962e09e72 17: 0x7fca1c5b87ff - waylanddisplaycore::comp::init::hcc5e4ff338379eb8 18: 0x7fca1c59f7ac - std::sys::backtrace::__rust_begin_short_backtrace::h7766e7f97cfbd0c9 19: 0x7fca1c60b83a - core::ops::function::FnOnce::call_once{{vtable.shim}}::he9c15249a5d27784 20: 0x7fca1c78772f - std::sys::thread::unix::Thread::new::thread_start::h10345b7e8309cb92 21: 0x7fca344c37f1 - <unknown> 22: 0x7fca34554944 - __clone 0:04:09.383908689 1 0x7fc9b00014f0 WARN waylanddisplaysrc wayland-display-core/src/lib.rs:267:waylanddisplaycore: message = Failed to recv buffer ack.; err = RecvError; 0:04:09.383924950 1 0x7fc9b00014f0 WARN basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: Internal data stream error. 0:04:09.383927737 1 0x7fc9b00014f0 WARN basesrc gstbasesrc.c:3187:gst_base_src_loop:<wolf_wayland_source> error: streaming stopped, reason error (-5) 18:57:49.589112373 ERROR | [GSTREAMER] Pipeline error: Internal data stream error. 0:04:09.384065855 1 0x7fc9a4007990 WARN waylanddisplaysrc wayland-display-core/src/lib.rs:291:waylanddisplaycore: message = Failed to send stop command: sending on a closed channel; 18:57:49.665127171 INFO | Creating Xbox joypad for controller 0 in session 13612273788857225832 18:57:50.384235097 INFO | [DOCKER] Starting container: /Wolf-UI_13612273788857225832 18:57:51.057630606 INFO | Stopped container: /Wolf-UI_13612273788857225832 18:57:53.060881852 INFO | [GSTREAMER] Pipeline reached End Of Stream 0:04:12.856048992 1 0x7fc96c028f90 WARN audiosrc gstaudiosrc.c:227:audioringbuffer_thread_func:<pulsesrc1> error reading data -1 (reason: Success), skipping segment ``` ## Questions 1. Is GBM (Generic Buffer Manager) properly supported with NVIDIA proprietary drivers in waylanddisplaysrc? 2. Why does DMA buffer creation fail with "No such file or directory" when all DRI devices are present? 3. Is the read-only `/usr/share/egl` filesystem issue a known limitation? 4. Are there any known working configurations for Arch Linux + NVIDIA + Wayland? ## Related Issues Possibly related to: - #124 (Nvidia: using container toolkit results in EGL exception) - #103 (VAAPI and AMD Issues - mentions grey screen with HEVC) - #50 (Corrupted stream with Intel iGPU)
Author
Owner

@ABeltramo commented on GitHub (Nov 25, 2025):

Your compose specification is messed up.
You are mixing the Nvidia container toolkit with the Nvidia manual method from the quickstart guide; you have to pick one of the two options and don't mix the arguments.

We suggest using the Nvidia driver volume method because it's the most reliable, so I suggest you to start with that and see if it works.

Everything else is pretty much all an AI hallucination 😉

<!-- gh-comment-id:3577301989 --> @ABeltramo commented on GitHub (Nov 25, 2025): Your compose specification is messed up. You are mixing the Nvidia container toolkit with the Nvidia manual method from the quickstart guide; you have to pick one of the two options and don't mix the arguments. We suggest using the Nvidia driver volume method because it's the most reliable, so I suggest you to start with that and see if it works. Everything else is pretty much all an AI hallucination 😉
Author
Owner

@flathead commented on GitHub (Dec 3, 2025):

Your compose specification is messed up. You are mixing the Nvidia container toolkit with the Nvidia manual method from the quickstart guide; you have to pick one of the two options and don't mix the arguments.

We suggest using the Nvidia driver volume method because it's the most reliable, so I suggest you to start with that and see if it works.

Everything else is pretty much all an AI hallucination 😉

Yes, I tried to solve the problem through AI, since both standard methods don’t work. GStreamer exits with a critical error:

(wolf:1): GStreamer-CRITICAL **: 21:06:55.114: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed

(wolf:1): GStreamer-CRITICAL **: 21:06:55.122: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed
21:06:57.006165061 WARN | Process exited with code: 9

(wolf:1): GStreamer-CRITICAL **: 21:06:57.324: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed
21:06:59.041178087 WARN | Received MOUSE_MOVE_REL_PACKET but no mouse device is present
21:06:59.050137053 WARN | Received MOUSE_MOVE_REL_PACKET but no mouse device is present
21:06:59.074580291 INFO | Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0)
21:06:59.101316632 INFO | Creating Xbox joypad for controller 0 in session 13612273788857225832
0:11:36.080955517 1 0x7f656c01a1b0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues.
0:11:36.080964215 1 0x7f656c01a1b0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
21:06:59.147093994 INFO | Wayland display ready, listening on: wayland-1
21:06:59.154282554 INFO | Mounting nvidia driver nvidia-driver-vol:/usr/nvidia
21:06:59.165787970 WARN | [DOCKER] Image ghcr.io/games-on-whales/wolf-ui:main not present, downloading...
21:07:14.309841451 INFO | [DOCKER] Starting container: /Wolf-UI_13612273788857225832

All I see when launching, regardless of which of the two methods I choose, is a black screen in Moonlight. I haven’t found any solutions in the issues, and I don’t have the expertise to fix it myself. Searching didn’t help, and AI couldn’t help in this situation either.
In the Arch + Wayland configuration, the configs don’t work.

<!-- gh-comment-id:3608874829 --> @flathead commented on GitHub (Dec 3, 2025): > Your compose specification is messed up. You are mixing the Nvidia container toolkit with the Nvidia manual method from the quickstart guide; you have to pick one of the two options and don't mix the arguments. > > We suggest using the Nvidia driver volume method because it's the most reliable, so I suggest you to start with that and see if it works. > > Everything else is pretty much all an AI hallucination 😉 Yes, I tried to solve the problem through AI, since both standard methods don’t work. GStreamer exits with a critical error: ```bash (wolf:1): GStreamer-CRITICAL **: 21:06:55.114: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed (wolf:1): GStreamer-CRITICAL **: 21:06:55.122: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed 21:06:57.006165061 WARN | Process exited with code: 9 (wolf:1): GStreamer-CRITICAL **: 21:06:57.324: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed 21:06:59.041178087 WARN | Received MOUSE_MOVE_REL_PACKET but no mouse device is present 21:06:59.050137053 WARN | Received MOUSE_MOVE_REL_PACKET but no mouse device is present 21:06:59.074580291 INFO | Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0) 21:06:59.101316632 INFO | Creating Xbox joypad for controller 0 in session 13612273788857225832 0:11:36.080955517 1 0x7f656c01a1b0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues. 0:11:36.080964215 1 0x7f656c01a1b0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 21:06:59.147093994 INFO | Wayland display ready, listening on: wayland-1 21:06:59.154282554 INFO | Mounting nvidia driver nvidia-driver-vol:/usr/nvidia 21:06:59.165787970 WARN | [DOCKER] Image ghcr.io/games-on-whales/wolf-ui:main not present, downloading... 21:07:14.309841451 INFO | [DOCKER] Starting container: /Wolf-UI_13612273788857225832 ``` All I see when launching, regardless of which of the two methods I choose, is a black screen in Moonlight. I haven’t found any solutions in the issues, and I don’t have the expertise to fix it myself. Searching didn’t help, and AI couldn’t help in this situation either. In the Arch + Wayland configuration, the configs don’t work.
Author
Owner

@Greaper88 commented on GitHub (Dec 4, 2025):

Since you've changed methods, try using docker compose down -v to clear the saved volumes. I've had to do this a couple of times to fix issues.

<!-- gh-comment-id:3609400098 --> @Greaper88 commented on GitHub (Dec 4, 2025): Since you've changed methods, try using `docker compose down -v` to clear the saved volumes. I've had to do this a couple of times to fix issues.
Author
Owner

@flathead commented on GitHub (Dec 4, 2025):

Since you've changed methods, try using docker compose down -v to clear the saved volumes. I've had to do this a couple of times to fix issues.

The first thing I tried was restarting the containers. Here’s a brief list of what I’ve attempted: restarting, reinstalling Docker and NVIDIA drivers, changing the configuration, trying to fix things from inside the containers, completely reinstalling Wolf. None of the methods or solutions I found on Google or in the Issues have helped. Once, after trying to reinstall Wolf, I managed to get video and audio in the Test Ball, but after reconnecting to Wolf again — black screen, and I couldn’t get even the Test Ball to start anymore.

<!-- gh-comment-id:3611965203 --> @flathead commented on GitHub (Dec 4, 2025): > Since you've changed methods, try using `docker compose down -v` to clear the saved volumes. I've had to do this a couple of times to fix issues. The first thing I tried was restarting the containers. Here’s a brief list of what I’ve attempted: restarting, reinstalling Docker and NVIDIA drivers, changing the configuration, trying to fix things from inside the containers, completely reinstalling Wolf. None of the methods or solutions I found on Google or in the Issues have helped. Once, after trying to reinstall Wolf, I managed to get video and audio in the Test Ball, but after reconnecting to Wolf again — black screen, and I couldn’t get even the Test Ball to start anymore.
Author
Owner

@ABeltramo commented on GitHub (Dec 4, 2025):

@flathead I was suggesting to change your manually edited compose.yml with the default from the quickstart guide. Since you've first opened this we've also released a few updates. First, make sure that you have the latest image with:

docker pull ghcr.io/games-on-whales/wolf:stable

After that, can you try running the following

version: "3"
services:
  wolf:
    image: ghcr.io/games-on-whales/wolf:stable
    environment:
      - NVIDIA_DRIVER_VOLUME_NAME=nvidia-driver-vol
      - WOLF_LOG_LEVEL=DEBUG
    volumes:
      - /etc/wolf/:/etc/wolf:rw
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /dev/:/dev/:rw
      - /run/udev:/run/udev:rw
      - nvidia-driver-vol:/usr/nvidia:rw
    devices:
      - /dev/dri
      - /dev/uinput
      - /dev/uhid
      - /dev/nvidia-uvm
      - /dev/nvidia-uvm-tools
      - /dev/nvidia-caps/nvidia-cap1
      - /dev/nvidia-caps/nvidia-cap2
      - /dev/nvidiactl
      - /dev/nvidia0
      - /dev/nvidia-modeset
    device_cgroup_rules:
      - 'c 13:* rmw'
    network_mode: host
    restart: unless-stopped

volumes:
  nvidia-driver-vol:
    external: true

without changing anything and see if that works for you? If it doesn't, can you please post the full Wolf logs when running it with these exact settings?

<!-- gh-comment-id:3612196953 --> @ABeltramo commented on GitHub (Dec 4, 2025): @flathead I was suggesting to change your manually edited `compose.yml` with the default from the [quickstart guide](https://games-on-whales.github.io/wolf/stable/user/quickstart.html). Since you've first opened this we've also released a few updates. First, make sure that you have the latest image with: ```bash docker pull ghcr.io/games-on-whales/wolf:stable ``` After that, can you try running the following ```yaml version: "3" services: wolf: image: ghcr.io/games-on-whales/wolf:stable environment: - NVIDIA_DRIVER_VOLUME_NAME=nvidia-driver-vol - WOLF_LOG_LEVEL=DEBUG volumes: - /etc/wolf/:/etc/wolf:rw - /var/run/docker.sock:/var/run/docker.sock:rw - /dev/:/dev/:rw - /run/udev:/run/udev:rw - nvidia-driver-vol:/usr/nvidia:rw devices: - /dev/dri - /dev/uinput - /dev/uhid - /dev/nvidia-uvm - /dev/nvidia-uvm-tools - /dev/nvidia-caps/nvidia-cap1 - /dev/nvidia-caps/nvidia-cap2 - /dev/nvidiactl - /dev/nvidia0 - /dev/nvidia-modeset device_cgroup_rules: - 'c 13:* rmw' network_mode: host restart: unless-stopped volumes: nvidia-driver-vol: external: true ``` **without changing anything** and see if that works for you? If it doesn't, can you please post the full Wolf logs when running it with these exact settings?
Author
Owner

@flathead commented on GitHub (Dec 4, 2025):

@ABeltramo
Unfortunately, with the updated image and this Compose config the exact same issue remains — a black screen. Below are the logs when launching Test Ball and Wolf UI.

Test Ball logs:

...
[2025-12-04 19:12:27] 
[2025-12-04 19:12:27] [ /etc/cont-init.d/10-setup_user.sh: executing... ]
[2025-12-04 19:12:27] **** Configure default user ****
[2025-12-04 19:12:27] Container running as root. Nothing to do.
[2025-12-04 19:12:27] DONE
[2025-12-04 19:12:27] 
[2025-12-04 19:12:27] [ /etc/cont-init.d/15-setup_devices.sh: executing... ]
[2025-12-04 19:12:27] **** Configure devices ****
[2025-12-04 19:12:27] Exec device groups
[2025-12-04 19:12:27] Adding user 'root' to groups: gow-gid-993
[2025-12-04 19:12:27] DONE
[2025-12-04 19:12:27] 
[2025-12-04 19:12:27] [ /etc/cont-init.d/30-nvidia.sh: executing... ]
[2025-12-04 19:12:27] Nvidia driver volume detected
[2025-12-04 19:12:27] [nvidia] Add Vulkan ICD
[2025-12-04 19:12:27] [nvidia] Add EGL external platform
[2025-12-04 19:12:27] [nvidia] Add egl-vendor
[2025-12-04 19:12:27] [nvidia] Add gbm backend
[2025-12-04 19:12:27] 
[2025-12-04 19:12:27] [ /etc/cont-init.d/init-gamescope.sh: executing... ]
[2025-12-04 19:12:27] Launching the container's startup script as user 'root'
0:00:00.063531314   183 0x55b386522d40 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x55b386512d70> Could not set value on item: format-version
0:00:00.063549889   183 0x55b386522d40 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x55b386522f80> Could not set value on item: format-version
0:00:00.063556350   183 0x55b386522d40 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x55b3865237f0> Could not set value on item: format-version
0:00:00.064075327   183 0x55b386522d40 WARN               structure gststructure.c:3378:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype
0:00:00.172455454   183 0x55b386522d40 WARN               cudanvrtc gstcudanvrtc.cpp:179:gst_cuda_nvrtc_load_library_once: Failed to load 'nvrtcGetCUBINSize', 'nvrtcGetCUBINSize': /usr/local/nvidia/lib/libnvrtc.so: undefined symbol: nvrtcGetCUBINSize
0:00:01.414694581   183 0x55b386522d40 WARN             msdkcontext gstmsdkcontext.c:178:gst_msdk_context_use_vaapi: Couldn't find a drm device node to open
0:00:01.447624380   183 0x55b386522d40 WARN                   vaapi gstvaapiutils.c:78:gst_vaapi_warning: vaGetDriverNames() failed with operation failed
0:00:01.447792419   183 0x55b386522d40 WARN                 default gstvaapi.c:232:plugin_init: Cannot create a VA display
0:00:01.460109527   183 0x55b386522d40 WARN               vadisplay gstvadisplay.c:401:gst_va_display_initialize:<vadisplaydrm0> vaInitialize: unknown libva error
0:00:01.470248580   183 0x55b386522d40 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
0:00:01.472623848   183 0x55b386522d40 WARN               vadisplay gstvadisplay.c:401:gst_va_display_initialize:<vadisplaydrm1> vaInitialize: unknown libva error
0:00:01.485154220   183 0x55b386522d40 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise
0:00:01.492326199     1 0x55a4bde8dc50 WARN            GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so)
0:00:01.489847462   183 0x55b386522d40 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
0:00:01.490913586   183 0x55b386522d40 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise
0:00:01.499039469     1 0x55a4bde8dc50 WARN            GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so)
19:12:29.367569274 INFO  | Gstreamer version: 1.26.7-0
19:12:29.377829275 DEBUG | XDG_RUNTIME_DIR=/run/user/wolf
19:12:29.377883742 INFO  | Reading config file from: /etc/wolf/cfg/config.toml
19:12:29.391515744 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation
0:00:01.659027587     1 0x55a4bde8dc50 WARN               cudanvrtc gstcudanvrtc.cpp:179:gst_cuda_nvrtc_load_library_once: Failed to load 'nvrtcGetCUBINSize', 'nvrtcGetCUBINSize': /usr/local/nvidia/lib/libnvrtc.so: undefined symbol: nvrtcGetCUBINSize
19:12:30.596785008 INFO  | Using h264 encoder: nvcodec
19:12:30.603056620 INFO  | Using h265 encoder: nvcodec
19:12:30.603160240 INFO  | Using av1 encoder: nvcodec
19:12:30.603729538 INFO  | Using zero copy pipeline on Nvidia (/dev/dri/renderD128)
19:12:30.670320167 DEBUG | Loading server certificates from disk: /etc/wolf/cfg/cert.pem /etc/wolf/cfg/key.pem
19:12:30.691084661 DEBUG | We are running as container ID 2592efd4a06731d0714c557d4803752b4ab4b75b3254c154feea9602d93b73ab
19:12:30.691169818 INFO  | Detected mounted /etc/wolf in the host as /etc/wolf
19:12:30.691194095 INFO  | Detected mounted /run/user/wolf in the host as /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data
19:12:30.691482909 INFO  | [RTP] Starting RTP ping server on ports 48100 and 48200
19:12:30.691644286 INFO  | RTSP server started on port: 48010
19:12:30.691890808 INFO  | Starting mDNS service
19:12:30.692103810 INFO  | HTTP server listening on port: 47989 
19:12:30.692097342 INFO  | Starting Wolf API server on /run/user/wolf/wolf.sock
19:12:30.692177057 INFO  | Control server started on port: 47999
19:12:30.693568697 DEBUG | [PULSE] Connecting...
19:12:30.693700284 DEBUG | [PULSE] Context failed
19:12:30.693724599 WARN  | [PULSE] Unable to connect, Access denied
19:12:30.693836920 INFO  | Starting PulseAudio docker container
19:12:30.698132257 INFO  | HTTPS server listening on port: 47984 
19:12:33.129111580 DEBUG | [PULSE] Connecting...
19:12:33.136343032 DEBUG | [PULSE] Pulse connection ready
19:13:03.380853476 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo
19:13:03.477152493 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo
19:13:04.894517528 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo
19:13:04.978580401 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo
19:13:06.365868092 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo
19:13:06.445882203 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo
19:13:06.540220941 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/applist
19:13:07.423686818 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo
19:13:07.512082375 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo
19:13:07.606651186 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/launch
19:13:07.606969371 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Test ball, creating paths
19:13:07.615461993 DEBUG | [STREAM_SESSION] Create virtual audio sink
19:13:07.660777872 DEBUG | [RTSP] found session by matching payload: 64.62.208.111
19:13:07.660807617 DEBUG | [RTSP] received command OPTIONS
19:13:07.673157129 DEBUG | [RTSP] found session by matching payload: 64.62.208.111
19:13:07.673171354 DEBUG | [RTSP] received command DESCRIBE
19:13:07.673374064 DEBUG | [STREAM_SESSION] Start runner
19:13:07.682652797 DEBUG | [RTSP] found session by matching payload: 64.62.208.111
19:13:07.682663276 DEBUG | [RTSP] received command SETUP
19:13:07.683055683 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation
19:13:07.683082858 INFO  | Mounting nvidia driver nvidia-driver-vol:/usr/nvidia
19:13:07.683107873 DEBUG | [PROCESS] Starting process: sh -c "while :; do echo 'running...'; sleep 10; done"
19:13:07.694890028 DEBUG | [RTSP] found session by matching payload: 64.62.208.111
19:13:07.694907424 DEBUG | [RTSP] received command SETUP
19:13:07.704736535 DEBUG | [RTSP] found session by matching payload: 64.62.208.111
19:13:07.704747328 DEBUG | [RTSP] received command SETUP
19:13:07.715856466 DEBUG | [RTSP] found session by matching payload: 64.62.208.111
19:13:07.715893111 DEBUG | [RTSP] received command ANNOUNCE
19:13:07.716080058 DEBUG | [RTSP] Moonlight requested video format H264
19:13:07.716096240 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps
19:13:07.725704102 DEBUG | [RTSP] found session by matching payload: 64.62.208.111
19:13:07.725717421 DEBUG | [RTSP] received command PLAY
19:13:07.730869336 DEBUG | [ENET] connected client: 192.168.1.80:58361

(wolf:1): GStreamer-CRITICAL **: 19:13:07.742: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed

(wolf:1): GStreamer-CRITICAL **: 19:13:07.752: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed
19:13:18.113343669 DEBUG | [ENET] disconnected client: 192.168.1.80:58361
19:13:18.211177795 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume
19:13:18.211453319 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Test ball, creating paths
19:13:18.241268702 DEBUG | [RTSP] found session by matching payload: 78.254.56.228
19:13:18.241297099 DEBUG | [RTSP] received command OPTIONS
19:13:18.254703934 DEBUG | [RTSP] found session by matching payload: 78.254.56.228
19:13:18.254717059 DEBUG | [RTSP] received command DESCRIBE
19:13:18.263880611 DEBUG | [RTSP] found session by matching payload: 78.254.56.228
19:13:18.263890151 DEBUG | [RTSP] received command SETUP
19:13:18.275240305 DEBUG | [RTSP] found session by matching payload: 78.254.56.228
19:13:18.275250672 DEBUG | [RTSP] received command SETUP
19:13:18.283248476 DEBUG | [RTSP] found session by matching payload: 78.254.56.228
19:13:18.283260222 DEBUG | [RTSP] received command SETUP
19:13:18.298399997 DEBUG | [RTSP] found session by matching payload: 78.254.56.228
19:13:18.298410987 DEBUG | [RTSP] received command ANNOUNCE
19:13:18.298481094 DEBUG | [RTSP] Moonlight requested video format H264
19:13:18.298488217 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps
19:13:18.313461535 DEBUG | [RTSP] found session by matching payload: 78.254.56.228
19:13:18.313483743 DEBUG | [RTSP] received command PLAY
19:13:18.320058694 DEBUG | [ENET] connected client: 192.168.1.80:45510

(wolf:1): GStreamer-CRITICAL **: 19:13:18.329: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed

(wolf:1): GStreamer-CRITICAL **: 19:13:18.339: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed
19:13:28.699108269 DEBUG | [ENET] disconnected client: 192.168.1.80:45510
19:13:28.797375019 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume
19:13:28.797582716 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Test ball, creating paths
19:13:28.816779633 DEBUG | [RTSP] found session by matching payload: 177.26.133.58
19:13:28.816791069 DEBUG | [RTSP] received command OPTIONS
19:13:28.833208998 DEBUG | [RTSP] found session by matching payload: 177.26.133.58
19:13:28.833224939 DEBUG | [RTSP] received command DESCRIBE
19:13:28.845584945 DEBUG | [RTSP] found session by matching payload: 177.26.133.58
19:13:28.845595825 DEBUG | [RTSP] received command SETUP
19:13:28.855918342 DEBUG | [RTSP] found session by matching payload: 177.26.133.58
19:13:28.855926901 DEBUG | [RTSP] received command SETUP
19:13:28.864179960 DEBUG | [RTSP] found session by matching payload: 177.26.133.58
19:13:28.864187912 DEBUG | [RTSP] received command SETUP
19:13:28.872920179 DEBUG | [RTSP] found session by matching payload: 177.26.133.58
19:13:28.872929240 DEBUG | [RTSP] received command ANNOUNCE
19:13:28.873011931 DEBUG | [RTSP] Moonlight requested video format H264
19:13:28.873017100 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps
19:13:28.880655836 DEBUG | [RTSP] found session by matching payload: 177.26.133.58
19:13:28.880664528 DEBUG | [RTSP] received command PLAY
19:13:28.886681277 DEBUG | [ENET] connected client: 192.168.1.80:3885

Wolf UI logs:

...
19:15:28.842593981 DEBUG | 13612273788857225832 received hot-plug device event
19:15:28.973151180 DEBUG | Received NEED_CONTEXT for type gst.cuda.context
19:15:28.973370294 DEBUG | Found Nvidia GPU: 0000:01:00.0
19:15:28.973388631 DEBUG | PCI bus ID 0000:01:00.0 mapped to CUDA device index 0 (sorted order)
19:15:28.973394555 INFO  | Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0)
19:15:29.045129821 DEBUG | Created CUDA context for device: /dev/dri/renderD128
0:03:01.268226584     1 0x7f255c01d5a0 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues.
0:03:01.268233960     1 0x7f255c01d5a0 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for  the processing deadline of 0:00:00.020000000, add enough queues to buffer  0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
19:15:29.045395041 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1
19:15:29.045402543 INFO  | Wayland display ready, listening on: wayland-1
19:15:29.045500139 DEBUG | [STREAM_SESSION] Start runner
19:15:29.051712849 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation
19:15:29.051727450 INFO  | Mounting nvidia driver nvidia-driver-vol:/usr/nvidia
19:15:29.051764247 DEBUG | [DOCKER] Using fake-udev, creating /etc/wolf/13612273788857225832/Wolf UI/udev/data
19:15:29.056107899 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation
19:15:29.056177581 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:243 and input:13
19:15:29.056205629 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 243:* rwm","c 13:* rwm"]}}
19:15:29.314464388 INFO  | [DOCKER] Starting container: /Wolf-UI_13612273788857225832
19:15:29.314565862 DEBUG | [DOCKER] Starting container: {
 id: 93066149f3e9a76f220db5b02bf4b6f062ee33cb4195e5e263d45128c64b98b3
 name: /Wolf-UI_13612273788857225832
 image: ghcr.io/games-on-whales/wolf-ui:main
 status: 0
 ports: []
 mounts: [/var/lib/docker/volumes/nvidia-driver-vol/_data:/usr/nvidia:rw, /etc/wolf/fake-udev:/usr/bin/fake-udev:rw, /etc/wolf/13612273788857225832/Wolf UI/udev:/run/udev:rw, /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data/wolf.sock:/var/run/wolf/wolf.sock:rw, /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data/pulse-socket:/run/user/wolf/pulse-socket:rw, /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data/wayland-1:/run/user/wolf/wayland-1:rw, /etc/wolf/13612273788857225832/Wolf UI:/home/retro:rw]
 devices: [/dev/dri/card1:/dev/dri/card1:mrw, /dev/nvidia0:/dev/nvidia0:mrw, /dev/nvidia-modeset:/dev/nvidia-modeset:mrw, /dev/nvidia-uvm:/dev/nvidia-uvm:mrw, /dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools:mrw, /dev/nvidiactl:/dev/nvidiactl:mrw, /dev/dri/renderD128:/dev/dri/renderD128:mrw]
 env: ["GOW_REQUIRED_DEVICES=/dev/input/event* /dev/dri/* /dev/nvidia*", "WOLF_SOCKET_PATH=/var/run/wolf/wolf.sock", "WOLF_UI_AUTOUPDATE=False", "LOGLEVEL=INFO", "GAMESCOPE_REFRESH=60", "PUID=1000", "WAYLAND_DISPLAY=wayland-1", "GAMESCOPE_HEIGHT=720", "PGID=1000", "PULSE_SERVER=/run/user/wolf/pulse-socket", "WOLF_VIDEO_BUFFER_CAPS=video/x-raw(memory:CUDAMemory)", "PULSE_SOURCE=virtual_sink_13612273788857225832.monitor", "PULSE_SINK=virtual_sink_13612273788857225832", "WOLF_SESSION_ID=13612273788857225832", "XDG_RUNTIME_DIR=/run/user/wolf", "GAMESCOPE_WIDTH=1280", "PATH=/usr/games/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "UMASK=000", "UNAME=root", "HOME=/home/retro", "TZ=Europe/London", "DEBIAN_FRONTEND=noninteractive", "NEEDRESTART_SUSPEND=1", "GAMESCOPE_VERSION=3.15.14", "BUILD_ARCHITECTURE=amd64", "DEB_BUILD_OPTIONS=noddebs"]
}
19:15:29.314606620 DEBUG | [DOCKER] Plugging device from queue in session: 13612273788857225832
19:15:29.314627417 DEBUG | [DOCKER] Writing hwdb file: /etc/wolf/13612273788857225832/Wolf UI/udev/data/c13:88
19:15:29.314803168 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/event24 c 13 88 && chmod 777 /dev/input/event24 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9ldmVudDI0AERFVlBBVEg9L2RldmljZXMvdmlydHVhbC9pbnB1dC9pbnB1dDMzL2V2ZW50MjQASURfSU5QVVQ9MQBJRF9JTlBVVF9KT1lTVElDSz0xAElEX1NFUklBTD1ub3NlcmlhbABNQUpPUj0xMwBNSU5PUj04OABTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVU0VDX0lOSVRJQUxJWkVEPTE3NjQ4NzU3MjgA
19:15:29.357484815 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/js0 c 13 0 && chmod 777 /dev/input/js0 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9qczAAREVWUEFUSD0vZGV2aWNlcy92aXJ0dWFsL2lucHV0L2lucHV0MzMvanMwAElEX0lOUFVUPTEASURfSU5QVVRfSk9ZU1RJQ0s9MQBJRF9TRVJJQUw9bm9zZXJpYWwATUFKT1I9MTMATUlOT1I9MABTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVU0VDX0lOSVRJQUxJWkVEPTE3NjQ4NzU3MjgA
19:15:34.790729567 DEBUG | [API] Received request: GET /api/v1/profiles - 
19:15:34.790757174 DEBUG | [API] Received request: GET /api/v1/events - 
19:15:34.790768498 DEBUG | [API] Received request: GET /api/v1/lobbies - 
19:15:39.143969937 DEBUG | [ENET] disconnected client: 192.168.1.80:10365
19:15:39.253522888 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume
19:15:39.253598344 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Wolf UI, creating paths
19:15:39.282690920 DEBUG | [RTSP] found session by matching payload: 184.146.250.44
19:15:39.282715555 DEBUG | [RTSP] received command OPTIONS
19:15:39.290883875 DEBUG | [RTSP] found session by matching payload: 184.146.250.44
19:15:39.290898198 DEBUG | [RTSP] received command DESCRIBE
19:15:39.299198467 DEBUG | [RTSP] found session by matching payload: 184.146.250.44
19:15:39.299212556 DEBUG | [RTSP] received command SETUP
19:15:39.308120780 DEBUG | [RTSP] found session by matching payload: 184.146.250.44
19:15:39.308137562 DEBUG | [RTSP] received command SETUP
19:15:39.315913232 DEBUG | [RTSP] found session by matching payload: 184.146.250.44
19:15:39.315926797 DEBUG | [RTSP] received command SETUP
19:15:39.325088261 DEBUG | [RTSP] found session by matching payload: 184.146.250.44
19:15:39.325100464 DEBUG | [RTSP] received command ANNOUNCE
19:15:39.325163214 DEBUG | [RTSP] Moonlight requested video format H264
19:15:39.325168509 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps
19:15:39.333343883 DEBUG | [RTSP] found session by matching payload: 184.146.250.44
19:15:39.333353426 DEBUG | [RTSP] received command PLAY
19:15:39.339738917 DEBUG | [ENET] connected client: 192.168.1.80:20358
19:15:49.723996829 DEBUG | [ENET] disconnected client: 192.168.1.80:20358
19:15:49.827165471 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume
19:15:49.827412068 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Wolf UI, creating paths
19:15:49.861018470 DEBUG | [RTSP] found session by matching payload: 240.232.145.192
19:15:49.861042552 DEBUG | [RTSP] received command OPTIONS
19:15:49.873188504 DEBUG | [RTSP] found session by matching payload: 240.232.145.192
19:15:49.873200804 DEBUG | [RTSP] received command DESCRIBE
19:15:49.882731660 DEBUG | [RTSP] found session by matching payload: 240.232.145.192
19:15:49.882741849 DEBUG | [RTSP] received command SETUP
19:15:49.892142399 DEBUG | [RTSP] found session by matching payload: 240.232.145.192
19:15:49.892152350 DEBUG | [RTSP] received command SETUP
19:15:49.899762376 DEBUG | [RTSP] found session by matching payload: 240.232.145.192
19:15:49.899771491 DEBUG | [RTSP] received command SETUP
19:15:49.908801965 DEBUG | [RTSP] found session by matching payload: 240.232.145.192
19:15:49.908811097 DEBUG | [RTSP] received command ANNOUNCE
19:15:49.908871476 DEBUG | [RTSP] Moonlight requested video format H264
19:15:49.908876639 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps
19:15:49.916909896 DEBUG | [RTSP] found session by matching payload: 240.232.145.192
19:15:49.916919202 DEBUG | [RTSP] received command PLAY
19:15:49.923739498 DEBUG | [ENET] connected client: 192.168.1.80:21964
19:16:00.309612778 DEBUG | [ENET] disconnected client: 192.168.1.80:21964
<!-- gh-comment-id:3613978308 --> @flathead commented on GitHub (Dec 4, 2025): @ABeltramo Unfortunately, with the updated image and this Compose config the exact same issue remains — a black screen. Below are the logs when launching Test Ball and Wolf UI. ## Test Ball logs: ```bash ... [2025-12-04 19:12:27] [2025-12-04 19:12:27] [ /etc/cont-init.d/10-setup_user.sh: executing... ] [2025-12-04 19:12:27] **** Configure default user **** [2025-12-04 19:12:27] Container running as root. Nothing to do. [2025-12-04 19:12:27] DONE [2025-12-04 19:12:27] [2025-12-04 19:12:27] [ /etc/cont-init.d/15-setup_devices.sh: executing... ] [2025-12-04 19:12:27] **** Configure devices **** [2025-12-04 19:12:27] Exec device groups [2025-12-04 19:12:27] Adding user 'root' to groups: gow-gid-993 [2025-12-04 19:12:27] DONE [2025-12-04 19:12:27] [2025-12-04 19:12:27] [ /etc/cont-init.d/30-nvidia.sh: executing... ] [2025-12-04 19:12:27] Nvidia driver volume detected [2025-12-04 19:12:27] [nvidia] Add Vulkan ICD [2025-12-04 19:12:27] [nvidia] Add EGL external platform [2025-12-04 19:12:27] [nvidia] Add egl-vendor [2025-12-04 19:12:27] [nvidia] Add gbm backend [2025-12-04 19:12:27] [2025-12-04 19:12:27] [ /etc/cont-init.d/init-gamescope.sh: executing... ] [2025-12-04 19:12:27] Launching the container's startup script as user 'root' 0:00:00.063531314 183 0x55b386522d40 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x55b386512d70> Could not set value on item: format-version 0:00:00.063549889 183 0x55b386522d40 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x55b386522f80> Could not set value on item: format-version 0:00:00.063556350 183 0x55b386522d40 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x55b3865237f0> Could not set value on item: format-version 0:00:00.064075327 183 0x55b386522d40 WARN structure gststructure.c:3378:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype 0:00:00.172455454 183 0x55b386522d40 WARN cudanvrtc gstcudanvrtc.cpp:179:gst_cuda_nvrtc_load_library_once: Failed to load 'nvrtcGetCUBINSize', 'nvrtcGetCUBINSize': /usr/local/nvidia/lib/libnvrtc.so: undefined symbol: nvrtcGetCUBINSize 0:00:01.414694581 183 0x55b386522d40 WARN msdkcontext gstmsdkcontext.c:178:gst_msdk_context_use_vaapi: Couldn't find a drm device node to open 0:00:01.447624380 183 0x55b386522d40 WARN vaapi gstvaapiutils.c:78:gst_vaapi_warning: vaGetDriverNames() failed with operation failed 0:00:01.447792419 183 0x55b386522d40 WARN default gstvaapi.c:232:plugin_init: Cannot create a VA display 0:00:01.460109527 183 0x55b386522d40 WARN vadisplay gstvadisplay.c:401:gst_va_display_initialize:<vadisplaydrm0> vaInitialize: unknown libva error 0:00:01.470248580 183 0x55b386522d40 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise 0:00:01.472623848 183 0x55b386522d40 WARN vadisplay gstvadisplay.c:401:gst_va_display_initialize:<vadisplaydrm1> vaInitialize: unknown libva error 0:00:01.485154220 183 0x55b386522d40 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise 0:00:01.492326199 1 0x55a4bde8dc50 WARN GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so) 0:00:01.489847462 183 0x55b386522d40 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise 0:00:01.490913586 183 0x55b386522d40 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise 0:00:01.499039469 1 0x55a4bde8dc50 WARN GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so) 19:12:29.367569274 INFO | Gstreamer version: 1.26.7-0 19:12:29.377829275 DEBUG | XDG_RUNTIME_DIR=/run/user/wolf 19:12:29.377883742 INFO | Reading config file from: /etc/wolf/cfg/config.toml 19:12:29.391515744 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation 0:00:01.659027587 1 0x55a4bde8dc50 WARN cudanvrtc gstcudanvrtc.cpp:179:gst_cuda_nvrtc_load_library_once: Failed to load 'nvrtcGetCUBINSize', 'nvrtcGetCUBINSize': /usr/local/nvidia/lib/libnvrtc.so: undefined symbol: nvrtcGetCUBINSize 19:12:30.596785008 INFO | Using h264 encoder: nvcodec 19:12:30.603056620 INFO | Using h265 encoder: nvcodec 19:12:30.603160240 INFO | Using av1 encoder: nvcodec 19:12:30.603729538 INFO | Using zero copy pipeline on Nvidia (/dev/dri/renderD128) 19:12:30.670320167 DEBUG | Loading server certificates from disk: /etc/wolf/cfg/cert.pem /etc/wolf/cfg/key.pem 19:12:30.691084661 DEBUG | We are running as container ID 2592efd4a06731d0714c557d4803752b4ab4b75b3254c154feea9602d93b73ab 19:12:30.691169818 INFO | Detected mounted /etc/wolf in the host as /etc/wolf 19:12:30.691194095 INFO | Detected mounted /run/user/wolf in the host as /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data 19:12:30.691482909 INFO | [RTP] Starting RTP ping server on ports 48100 and 48200 19:12:30.691644286 INFO | RTSP server started on port: 48010 19:12:30.691890808 INFO | Starting mDNS service 19:12:30.692103810 INFO | HTTP server listening on port: 47989 19:12:30.692097342 INFO | Starting Wolf API server on /run/user/wolf/wolf.sock 19:12:30.692177057 INFO | Control server started on port: 47999 19:12:30.693568697 DEBUG | [PULSE] Connecting... 19:12:30.693700284 DEBUG | [PULSE] Context failed 19:12:30.693724599 WARN | [PULSE] Unable to connect, Access denied 19:12:30.693836920 INFO | Starting PulseAudio docker container 19:12:30.698132257 INFO | HTTPS server listening on port: 47984 19:12:33.129111580 DEBUG | [PULSE] Connecting... 19:12:33.136343032 DEBUG | [PULSE] Pulse connection ready 19:13:03.380853476 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo 19:13:03.477152493 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo 19:13:04.894517528 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo 19:13:04.978580401 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo 19:13:06.365868092 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo 19:13:06.445882203 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo 19:13:06.540220941 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/applist 19:13:07.423686818 DEBUG | 192.168.1.80 [GET] HTTP://192.168.1.49/serverinfo 19:13:07.512082375 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/serverinfo 19:13:07.606651186 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/launch 19:13:07.606969371 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Test ball, creating paths 19:13:07.615461993 DEBUG | [STREAM_SESSION] Create virtual audio sink 19:13:07.660777872 DEBUG | [RTSP] found session by matching payload: 64.62.208.111 19:13:07.660807617 DEBUG | [RTSP] received command OPTIONS 19:13:07.673157129 DEBUG | [RTSP] found session by matching payload: 64.62.208.111 19:13:07.673171354 DEBUG | [RTSP] received command DESCRIBE 19:13:07.673374064 DEBUG | [STREAM_SESSION] Start runner 19:13:07.682652797 DEBUG | [RTSP] found session by matching payload: 64.62.208.111 19:13:07.682663276 DEBUG | [RTSP] received command SETUP 19:13:07.683055683 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation 19:13:07.683082858 INFO | Mounting nvidia driver nvidia-driver-vol:/usr/nvidia 19:13:07.683107873 DEBUG | [PROCESS] Starting process: sh -c "while :; do echo 'running...'; sleep 10; done" 19:13:07.694890028 DEBUG | [RTSP] found session by matching payload: 64.62.208.111 19:13:07.694907424 DEBUG | [RTSP] received command SETUP 19:13:07.704736535 DEBUG | [RTSP] found session by matching payload: 64.62.208.111 19:13:07.704747328 DEBUG | [RTSP] received command SETUP 19:13:07.715856466 DEBUG | [RTSP] found session by matching payload: 64.62.208.111 19:13:07.715893111 DEBUG | [RTSP] received command ANNOUNCE 19:13:07.716080058 DEBUG | [RTSP] Moonlight requested video format H264 19:13:07.716096240 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps 19:13:07.725704102 DEBUG | [RTSP] found session by matching payload: 64.62.208.111 19:13:07.725717421 DEBUG | [RTSP] received command PLAY 19:13:07.730869336 DEBUG | [ENET] connected client: 192.168.1.80:58361 (wolf:1): GStreamer-CRITICAL **: 19:13:07.742: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed (wolf:1): GStreamer-CRITICAL **: 19:13:07.752: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed 19:13:18.113343669 DEBUG | [ENET] disconnected client: 192.168.1.80:58361 19:13:18.211177795 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume 19:13:18.211453319 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Test ball, creating paths 19:13:18.241268702 DEBUG | [RTSP] found session by matching payload: 78.254.56.228 19:13:18.241297099 DEBUG | [RTSP] received command OPTIONS 19:13:18.254703934 DEBUG | [RTSP] found session by matching payload: 78.254.56.228 19:13:18.254717059 DEBUG | [RTSP] received command DESCRIBE 19:13:18.263880611 DEBUG | [RTSP] found session by matching payload: 78.254.56.228 19:13:18.263890151 DEBUG | [RTSP] received command SETUP 19:13:18.275240305 DEBUG | [RTSP] found session by matching payload: 78.254.56.228 19:13:18.275250672 DEBUG | [RTSP] received command SETUP 19:13:18.283248476 DEBUG | [RTSP] found session by matching payload: 78.254.56.228 19:13:18.283260222 DEBUG | [RTSP] received command SETUP 19:13:18.298399997 DEBUG | [RTSP] found session by matching payload: 78.254.56.228 19:13:18.298410987 DEBUG | [RTSP] received command ANNOUNCE 19:13:18.298481094 DEBUG | [RTSP] Moonlight requested video format H264 19:13:18.298488217 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps 19:13:18.313461535 DEBUG | [RTSP] found session by matching payload: 78.254.56.228 19:13:18.313483743 DEBUG | [RTSP] received command PLAY 19:13:18.320058694 DEBUG | [ENET] connected client: 192.168.1.80:45510 (wolf:1): GStreamer-CRITICAL **: 19:13:18.329: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed (wolf:1): GStreamer-CRITICAL **: 19:13:18.339: gst_element_send_event: assertion 'GST_IS_ELEMENT (element)' failed 19:13:28.699108269 DEBUG | [ENET] disconnected client: 192.168.1.80:45510 19:13:28.797375019 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume 19:13:28.797582716 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Test ball, creating paths 19:13:28.816779633 DEBUG | [RTSP] found session by matching payload: 177.26.133.58 19:13:28.816791069 DEBUG | [RTSP] received command OPTIONS 19:13:28.833208998 DEBUG | [RTSP] found session by matching payload: 177.26.133.58 19:13:28.833224939 DEBUG | [RTSP] received command DESCRIBE 19:13:28.845584945 DEBUG | [RTSP] found session by matching payload: 177.26.133.58 19:13:28.845595825 DEBUG | [RTSP] received command SETUP 19:13:28.855918342 DEBUG | [RTSP] found session by matching payload: 177.26.133.58 19:13:28.855926901 DEBUG | [RTSP] received command SETUP 19:13:28.864179960 DEBUG | [RTSP] found session by matching payload: 177.26.133.58 19:13:28.864187912 DEBUG | [RTSP] received command SETUP 19:13:28.872920179 DEBUG | [RTSP] found session by matching payload: 177.26.133.58 19:13:28.872929240 DEBUG | [RTSP] received command ANNOUNCE 19:13:28.873011931 DEBUG | [RTSP] Moonlight requested video format H264 19:13:28.873017100 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps 19:13:28.880655836 DEBUG | [RTSP] found session by matching payload: 177.26.133.58 19:13:28.880664528 DEBUG | [RTSP] received command PLAY 19:13:28.886681277 DEBUG | [ENET] connected client: 192.168.1.80:3885 ``` ## Wolf UI logs: ```bash ... 19:15:28.842593981 DEBUG | 13612273788857225832 received hot-plug device event 19:15:28.973151180 DEBUG | Received NEED_CONTEXT for type gst.cuda.context 19:15:28.973370294 DEBUG | Found Nvidia GPU: 0000:01:00.0 19:15:28.973388631 DEBUG | PCI bus ID 0000:01:00.0 mapped to CUDA device index 0 (sorted order) 19:15:28.973394555 INFO | Creating CUDA context for device /dev/dri/renderD128 (detected CUDA device ID: 0) 19:15:29.045129821 DEBUG | Created CUDA context for device: /dev/dri/renderD128 0:03:01.268226584 1 0x7f255c01d5a0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Pipeline construction is invalid, please add queues. 0:03:01.268233960 1 0x7f255c01d5a0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<13612273788857225832_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 19:15:29.045395041 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1 19:15:29.045402543 INFO | Wayland display ready, listening on: wayland-1 19:15:29.045500139 DEBUG | [STREAM_SESSION] Start runner 19:15:29.051712849 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation 19:15:29.051727450 INFO | Mounting nvidia driver nvidia-driver-vol:/usr/nvidia 19:15:29.051764247 DEBUG | [DOCKER] Using fake-udev, creating /etc/wolf/13612273788857225832/Wolf UI/udev/data 19:15:29.056107899 DEBUG | /dev/dri/renderD128 vendor: NVIDIA Corporation 19:15:29.056177581 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:243 and input:13 19:15:29.056205629 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 243:* rwm","c 13:* rwm"]}} 19:15:29.314464388 INFO | [DOCKER] Starting container: /Wolf-UI_13612273788857225832 19:15:29.314565862 DEBUG | [DOCKER] Starting container: { id: 93066149f3e9a76f220db5b02bf4b6f062ee33cb4195e5e263d45128c64b98b3 name: /Wolf-UI_13612273788857225832 image: ghcr.io/games-on-whales/wolf-ui:main status: 0 ports: [] mounts: [/var/lib/docker/volumes/nvidia-driver-vol/_data:/usr/nvidia:rw, /etc/wolf/fake-udev:/usr/bin/fake-udev:rw, /etc/wolf/13612273788857225832/Wolf UI/udev:/run/udev:rw, /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data/wolf.sock:/var/run/wolf/wolf.sock:rw, /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data/pulse-socket:/run/user/wolf/pulse-socket:rw, /var/lib/docker/volumes/abcd1f0dbeb1f3f37ac127118a74ad3533c050b9219f27c3874865008fd1add5/_data/wayland-1:/run/user/wolf/wayland-1:rw, /etc/wolf/13612273788857225832/Wolf UI:/home/retro:rw] devices: [/dev/dri/card1:/dev/dri/card1:mrw, /dev/nvidia0:/dev/nvidia0:mrw, /dev/nvidia-modeset:/dev/nvidia-modeset:mrw, /dev/nvidia-uvm:/dev/nvidia-uvm:mrw, /dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools:mrw, /dev/nvidiactl:/dev/nvidiactl:mrw, /dev/dri/renderD128:/dev/dri/renderD128:mrw] env: ["GOW_REQUIRED_DEVICES=/dev/input/event* /dev/dri/* /dev/nvidia*", "WOLF_SOCKET_PATH=/var/run/wolf/wolf.sock", "WOLF_UI_AUTOUPDATE=False", "LOGLEVEL=INFO", "GAMESCOPE_REFRESH=60", "PUID=1000", "WAYLAND_DISPLAY=wayland-1", "GAMESCOPE_HEIGHT=720", "PGID=1000", "PULSE_SERVER=/run/user/wolf/pulse-socket", "WOLF_VIDEO_BUFFER_CAPS=video/x-raw(memory:CUDAMemory)", "PULSE_SOURCE=virtual_sink_13612273788857225832.monitor", "PULSE_SINK=virtual_sink_13612273788857225832", "WOLF_SESSION_ID=13612273788857225832", "XDG_RUNTIME_DIR=/run/user/wolf", "GAMESCOPE_WIDTH=1280", "PATH=/usr/games/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "UMASK=000", "UNAME=root", "HOME=/home/retro", "TZ=Europe/London", "DEBIAN_FRONTEND=noninteractive", "NEEDRESTART_SUSPEND=1", "GAMESCOPE_VERSION=3.15.14", "BUILD_ARCHITECTURE=amd64", "DEB_BUILD_OPTIONS=noddebs"] } 19:15:29.314606620 DEBUG | [DOCKER] Plugging device from queue in session: 13612273788857225832 19:15:29.314627417 DEBUG | [DOCKER] Writing hwdb file: /etc/wolf/13612273788857225832/Wolf UI/udev/data/c13:88 19:15:29.314803168 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/event24 c 13 88 && chmod 777 /dev/input/event24 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9ldmVudDI0AERFVlBBVEg9L2RldmljZXMvdmlydHVhbC9pbnB1dC9pbnB1dDMzL2V2ZW50MjQASURfSU5QVVQ9MQBJRF9JTlBVVF9KT1lTVElDSz0xAElEX1NFUklBTD1ub3NlcmlhbABNQUpPUj0xMwBNSU5PUj04OABTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVU0VDX0lOSVRJQUxJWkVEPTE3NjQ4NzU3MjgA 19:15:29.357484815 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/js0 c 13 0 && chmod 777 /dev/input/js0 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9qczAAREVWUEFUSD0vZGV2aWNlcy92aXJ0dWFsL2lucHV0L2lucHV0MzMvanMwAElEX0lOUFVUPTEASURfSU5QVVRfSk9ZU1RJQ0s9MQBJRF9TRVJJQUw9bm9zZXJpYWwATUFKT1I9MTMATUlOT1I9MABTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVU0VDX0lOSVRJQUxJWkVEPTE3NjQ4NzU3MjgA 19:15:34.790729567 DEBUG | [API] Received request: GET /api/v1/profiles - 19:15:34.790757174 DEBUG | [API] Received request: GET /api/v1/events - 19:15:34.790768498 DEBUG | [API] Received request: GET /api/v1/lobbies - 19:15:39.143969937 DEBUG | [ENET] disconnected client: 192.168.1.80:10365 19:15:39.253522888 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume 19:15:39.253598344 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Wolf UI, creating paths 19:15:39.282690920 DEBUG | [RTSP] found session by matching payload: 184.146.250.44 19:15:39.282715555 DEBUG | [RTSP] received command OPTIONS 19:15:39.290883875 DEBUG | [RTSP] found session by matching payload: 184.146.250.44 19:15:39.290898198 DEBUG | [RTSP] received command DESCRIBE 19:15:39.299198467 DEBUG | [RTSP] found session by matching payload: 184.146.250.44 19:15:39.299212556 DEBUG | [RTSP] received command SETUP 19:15:39.308120780 DEBUG | [RTSP] found session by matching payload: 184.146.250.44 19:15:39.308137562 DEBUG | [RTSP] received command SETUP 19:15:39.315913232 DEBUG | [RTSP] found session by matching payload: 184.146.250.44 19:15:39.315926797 DEBUG | [RTSP] received command SETUP 19:15:39.325088261 DEBUG | [RTSP] found session by matching payload: 184.146.250.44 19:15:39.325100464 DEBUG | [RTSP] received command ANNOUNCE 19:15:39.325163214 DEBUG | [RTSP] Moonlight requested video format H264 19:15:39.325168509 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps 19:15:39.333343883 DEBUG | [RTSP] found session by matching payload: 184.146.250.44 19:15:39.333353426 DEBUG | [RTSP] received command PLAY 19:15:39.339738917 DEBUG | [ENET] connected client: 192.168.1.80:20358 19:15:49.723996829 DEBUG | [ENET] disconnected client: 192.168.1.80:20358 19:15:49.827165471 DEBUG | 192.168.1.80 [GET] HTTPS://192.168.1.49/resume 19:15:49.827412068 DEBUG | Host app state folder: /etc/wolf/13612273788857225832/Wolf UI, creating paths 19:15:49.861018470 DEBUG | [RTSP] found session by matching payload: 240.232.145.192 19:15:49.861042552 DEBUG | [RTSP] received command OPTIONS 19:15:49.873188504 DEBUG | [RTSP] found session by matching payload: 240.232.145.192 19:15:49.873200804 DEBUG | [RTSP] received command DESCRIBE 19:15:49.882731660 DEBUG | [RTSP] found session by matching payload: 240.232.145.192 19:15:49.882741849 DEBUG | [RTSP] received command SETUP 19:15:49.892142399 DEBUG | [RTSP] found session by matching payload: 240.232.145.192 19:15:49.892152350 DEBUG | [RTSP] received command SETUP 19:15:49.899762376 DEBUG | [RTSP] found session by matching payload: 240.232.145.192 19:15:49.899771491 DEBUG | [RTSP] received command SETUP 19:15:49.908801965 DEBUG | [RTSP] found session by matching payload: 240.232.145.192 19:15:49.908811097 DEBUG | [RTSP] received command ANNOUNCE 19:15:49.908871476 DEBUG | [RTSP] Moonlight requested video format H264 19:15:49.908876639 DEBUG | [RTSP] Adjusted video bitrate to 17367 Kbps 19:15:49.916909896 DEBUG | [RTSP] found session by matching payload: 240.232.145.192 19:15:49.916919202 DEBUG | [RTSP] received command PLAY 19:15:49.923739498 DEBUG | [ENET] connected client: 192.168.1.80:21964 19:16:00.309612778 DEBUG | [ENET] disconnected client: 192.168.1.80:21964 ```
Author
Owner

@ABeltramo commented on GitHub (Dec 4, 2025):

It seems that everything is working fine, Moonlight isn't able to connect to Wolf for some reason.

Which specific Moonlight client are you using? Can you try another one? Is this running over LAN or WAN? Any firewall in between?

<!-- gh-comment-id:3614022893 --> @ABeltramo commented on GitHub (Dec 4, 2025): It seems that everything is working fine, Moonlight isn't able to connect to Wolf for some reason. Which specific Moonlight client are you using? Can you try another one? Is this running over LAN or WAN? Any firewall in between?
Author
Owner

@flathead commented on GitHub (Dec 4, 2025):

Thank you for your help! I wrote a long message earlier about the Moonlight clients I’m using, that I added the required ports to iptables, tried disabling it, but nothing helped.

After I ran sudo systemctl stop iptables and then sudo systemctl start iptables, streaming suddenly started working for the first time in all my attempts! It wasn’t obvious, and I still don’t understand the connection, since I had already restarted iptables after adding the Wolf ports.
Anyway, thank you! :)

<!-- gh-comment-id:3614122123 --> @flathead commented on GitHub (Dec 4, 2025): Thank you for your help! I wrote a long message earlier about the Moonlight clients I’m using, that I added the required ports to iptables, tried disabling it, but nothing helped. After I ran `sudo systemctl stop iptables` and then `sudo systemctl start iptables`, streaming suddenly started working for the first time in all my attempts! It wasn’t obvious, and I still don’t understand the connection, since I had already restarted iptables after adding the Wolf ports. Anyway, thank you! :)
Author
Owner

@ABeltramo commented on GitHub (Dec 4, 2025):

No worries! Glad that was an easy fix! Have fun with Wolf! 😉

<!-- gh-comment-id:3614131919 --> @ABeltramo commented on GitHub (Dec 4, 2025): No worries! Glad that was an easy fix! Have fun with Wolf! 😉
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
games-on-whales/wolf#213
No description provided.