Bottles icon indicating copy to clipboard operation
Bottles copied to clipboard

Running gamescope in X11 error?

Open ghtesting2020 opened this issue 3 years ago • 26 comments

I am having trouble running gamescope when in X11. I have no issues if I use Wayland from sddm. When using X11 this is printed. The problem is some of the software I use won't run in wayland even when fallback to x11 is selected in flatseal so I stick to x11.

wlserver: [backend/headless/backend.c:68] Creating headless backend
vulkan: selecting physical device 'NVIDIA GeForce GTX 1650 max-q': queue family 2
vulkan: physical device supports DRM format modifiers
vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x3435353E (VkResult: 0)
vulkan: supported DRM formats for sampling usage:
vulkan:   0x34353531
vulkan:   0x34353427
wlserver: Running compositor on wayland display 'gamescope-0'
wlserver: [backend/headless/backend.c:16] Starting headless backend
wlserver: [xwayland/sockets.c:63] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use
wlserver: [xwayland/server.c:108] Starting Xwayland on :1
(EE) could not connect to wayland server

is Gamescope wayland only? Search results are showing me the opposite with people asking is there going to be a Gamescope style software for wayland

Thanks!

ghtesting2020 avatar Dec 28 '22 02:12 ghtesting2020

I'm pretty sure Gamescope works on both X11 and Wayland. I'll test it locally.

TheEvilSkeleton avatar Dec 29 '22 04:12 TheEvilSkeleton

Interesting. Gamescope created a nested Wayland session (I think?) under GNOME Xorg. After I switch to GNOME and switched back to GNOME Xorg, I can reproduce this problem.

TheEvilSkeleton avatar Dec 29 '22 05:12 TheEvilSkeleton

I should add I am using KDE plasma so it impacts both Gnome and Plasma.

ghtesting2020 avatar Dec 29 '22 23:12 ghtesting2020

I'm thinking of disabling Gamescope on Xorg, to be honest. I've done a couple of testing and it works unreliably.

TheEvilSkeleton avatar Jan 04 '23 19:01 TheEvilSkeleton

It's working fine for me in X11,~~the only gamescope problem I have is mangohud doesn't work and FSR doesn't work if gamescope is disabled.~~

So if gamescope is disabled on X11 then I can't use FSR or modify resolution on games that refuse to use the lower one.

Can't use wayland either because on the Aya Neo Air Pro handheld PC, steam desktop mode doesn't work on KDE, mapping the mouse cursor to the analog sticks is broken so can't use the controls to navigate the desktop.

23:35:50 (INFO) Using Steam runtime scout
wlserver: [backend/headless/backend.c:68] Creating headless backend
vulkan: selecting physical device 'AMD Radeon Graphics (RADV RENOIR)': queue family 1
vulkan: physical device supports DRM format modifiers
vulkan: supported DRM formats for sampling usage:
vulkan:   AR24 (0x34325241)
vulkan:   XR24 (0x34325258)
vulkan:   AB24 (0x34324241)
vulkan:   XB24 (0x34324258)
vulkan:   NV12 (0x3231564E)
vulkan:   AB4H (0x48344241)
vulkan:   AB48 (0x38344241)
vulkan:   AB30 (0x30334241)
vulkan:   XB30 (0x30334258)
vulkan:   AR30 (0x30335241)
vulkan:   XR30 (0x30335258)
wlserver: Running compositor on wayland display 'gamescope-0'
wlserver: [backend/headless/backend.c:16] Starting headless backend
wlserver: [xwayland/sockets.c:63] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use
wlserver: [xwayland/server.c:108] Starting Xwayland on :1
wlserver: [types/wlr_compositor.c:681] New wlr_surface 0x5613f7bfd4e0 (res 0x5613f7751d30)
wlserver: [xwayland/server.c:273] Xserver is ready
/tmp/tmpdi4trjoe.sh: line 3: mangoapp: command not found
gamemodeauto:
esync: up and running.
wine: RLIMIT_NICE is <= 20, unable to use setpriority safely
002c:err:wineboot:process_run_key Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -r" (2).
006c:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\wineusb": c0000142
wlserver: [types/wlr_compositor.c:681] New wlr_surface 0x5613f77d9d90 (res 0x5613f7757cd0)

ghost avatar Jan 05 '23 00:01 ghost

/tmp/tmpdi4trjoe.sh: line 3: mangoapp: command not found

How did you install MangoHud and Bottles? You're supposed to have this command.

TheEvilSkeleton avatar Jan 05 '23 00:01 TheEvilSkeleton

How did you install MangoHud and Bottles? You're supposed to have this command.

AUR, using mangohud-git and bottles-git. I like testing things to report bugs.

ghost avatar Jan 05 '23 00:01 ghost

It seems like mangohud-git does not provide mangoapp, so it fails to launch. It's why we only support Flatpak.

TheEvilSkeleton avatar Jan 05 '23 00:01 TheEvilSkeleton

Not a problem, I'm sure there's a mangoapp in the AUR that'll make it work. I've only had terrible experiences with flatpak integrating with things I install from AUR so I stick with one. :smiley:

ghost avatar Jan 05 '23 00:01 ghost

Fair enough. And yeah, I just checked and there's a PKGBUILD in the AUR: https://aur.archlinux.org/packages/mangoapp.

TheEvilSkeleton avatar Jan 05 '23 00:01 TheEvilSkeleton

Just installed it and a bit of troubleshooting and mangohud works in gamescope.

I'll cross that out of my post.

Not related but just wanted to mention that gamescope works for me and FSR doesn't work without it enabled since I was worried it'll be disabled in X11.

ghost avatar Jan 05 '23 00:01 ghost

Just installed it and a bit of troubleshooting and mangohud works in gamescope.

I'll cross that out of my post.

Not related but just wanted to mention that gamescope works for me and FSR doesn't work without it enabled since I was worried it'll be disabled in X11.

Now my question would be how come it works for you in X11 but not for us? I also cannot stick to Wayland so it would be ideal to get this working in X11.

ghtesting2020 avatar Jan 05 '23 01:01 ghtesting2020

Now my question would be how come it works for you in X11 but not for us? I also cannot stick to Wayland so it would be ideal to get this working in X11.

More information about my setup to hopefully help troubleshoot this :smile:

My package from the AUR is gamescope-git, I'm always up to date with latest git changes, bugs and all. Using the 5825U with it's Vega iGPU, haven't tested it on my Nvidia machine yet since it's running stable diffusion, might be worth looking to see if Nvidia has issues.

I have had the same issue you're having previously but restarting bottles fixed it for me, haven't had it since though.

ghost avatar Jan 05 '23 01:01 ghost

I see... I've heard in many places that Gamescope seems to not work well on X11, and I can confirm based on my testing and your experience with it. I'm considering hiding this feature on X11 altogether.

I'm not well versed with how Gamescope works internally; I only know how to use it. I don't think I can troubleshoot anything.

TheEvilSkeleton avatar Jan 08 '23 03:01 TheEvilSkeleton

Maybe make it an experimental feature on X11 that users can enable with a warning that bug reports won't be accepted with it enabled?

ghost avatar Jan 08 '23 04:01 ghost

To me, the term experimental implies that it's something we'd like users to test and submit feedback, which is not something we want at all. I'd say a toggle "Hidden Features" would fit better. But even then, having a toggle that reveals Gamescope on X11 would mean that we'd have to do the same thing with everything we have hidden. I am not too fond of that.

TheEvilSkeleton avatar Jan 08 '23 05:01 TheEvilSkeleton

I'm not fond of footguns. If it doesn't work, it shouldn't be exposed at all.

jannuary avatar Jan 08 '23 05:01 jannuary

It does work, for unknown reasons, not for everyone on X11. Should those that it currently works for lose a feature?

ghost avatar Jan 08 '23 05:01 ghost

@jannuary it's situational and unpredictable. But again, if we make one feature reveal behind a toggle, then we'll have to do the same with everything else, which I'm not okay with doing that.

TheEvilSkeleton avatar Jan 08 '23 05:01 TheEvilSkeleton

I finally got to test gamescope on my Nvidia machine and I get the same error.

wlserver: [backend/headless/backend.c:68] Creating headless backend
vulkan: selecting physical device 'NVIDIA GeForce GTX 1650': queue family 2
vulkan: physical device supports DRM format modifiers
vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x3231564E (VkResult: 0)
vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x48344241 (VkResult: 0)
vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x38344241 (VkResult: 0)
vulkan: supported DRM formats for sampling usage:
vulkan:   AR24 (0x34325241)
vulkan:   XR24 (0x34325258)
vulkan:   AB24 (0x34324241)
vulkan:   XB24 (0x34324258)
vulkan:   AB30 (0x30334241)
vulkan:   XB30 (0x30334258)
vulkan:   AR30 (0x30335241)
vulkan:   XR30 (0x30335258)
wlserver: Running compositor on wayland display 'gamescope-0'
wlserver: [backend/headless/backend.c:16] Starting headless backend
wlserver: [xwayland/sockets.c:63] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use
wlserver: [xwayland/server.c:108] Starting Xwayland on :1
(EE) could not connect to wayland server

Nothing definite but this might be a Nvidia issue, I'm using the proprietary drivers.

ghost avatar Jan 15 '23 02:01 ghost

I finally got to test gamescope on my Nvidia machine and I get the same error.

wlserver: [backend/headless/backend.c:68] Creating headless backend
vulkan: selecting physical device 'NVIDIA GeForce GTX 1650': queue family 2
vulkan: physical device supports DRM format modifiers
vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x3231564E (VkResult: 0)
vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x48344241 (VkResult: 0)
vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x38344241 (VkResult: 0)
vulkan: supported DRM formats for sampling usage:
vulkan:   AR24 (0x34325241)
vulkan:   XR24 (0x34325258)
vulkan:   AB24 (0x34324241)
vulkan:   XB24 (0x34324258)
vulkan:   AB30 (0x30334241)
vulkan:   XB30 (0x30334258)
vulkan:   AR30 (0x30335241)
vulkan:   XR30 (0x30335258)
wlserver: Running compositor on wayland display 'gamescope-0'
wlserver: [backend/headless/backend.c:16] Starting headless backend
wlserver: [xwayland/sockets.c:63] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use
wlserver: [xwayland/server.c:108] Starting Xwayland on :1
(EE) could not connect to wayland server

Nothing definite but this might be a Nvidia issue, I'm using the proprietary drivers.

I am also using proprietary drivers. I was hoping others with more knowledge in Linux than myself could help out. I'm still new to Linux.

ghtesting2020 avatar Jan 16 '23 18:01 ghtesting2020

I'm using a 3080 and can use gamescope outside of flatpak on x11. I have gamescope installed through pacman and also through flatpak. If I launch a game from bottles with gamescope enabled it doesn't work. If I open a terminal and run "gamescope vkcube" it works. Maybe it's a flatpak issue?

dconz13 avatar Apr 04 '23 15:04 dconz13

I doubt it's a Flatpak issue

TheEvilSkeleton avatar Apr 07 '23 10:04 TheEvilSkeleton

its not a flatpak issue as this happens with manually compiled gamescope as well.

peltax avatar Sep 07 '24 10:09 peltax

I managed to get gamescope working on nvidia proprietary driver on x11. I'm using dwm on debian sid.

I built gamescope myself using this command:

git clone --recurse-submodules https://github.com/ValveSoftware/gamescope
cd gamescope
mkdir build
cd build
meson setup -Dprefix=$HOME/.local/gamescope -Dwlroots:backends=x11,drm,libinput -Dwlroots:renderers=gles2,vulkan ..
ninja
ninja install

After adding $HOME/.local/gamescope/bin to $PATH, I can run games just fine. Here is the log

$ gamescope --immediate-flips -W 1920 -H 1080 -w 1920 -h 1080 -F nearest -- vkcube
[gamescope] [Info]  console: gamescope version 3.15.7+ (gcc 14.2.0)
No CAP_SYS_NICE, falling back to regular-priority compute and threads.
Performance will be affected.
[gamescope] [Info]  vulkan: selecting physical device 'NVIDIA GeForce RTX 3090': queue family 2 (general queue family 0)
[gamescope] [Info]  vulkan: physical device supports DRM format modifiers
[gamescope] [Info]  wlserver: [backend/headless/backend.c:67] Creating headless backend
[gamescope] [Error] vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x38344241 (VkResult: 0)
[gamescope] [Error] vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x38344258 (VkResult: 0)
[gamescope] [Info]  vulkan: supported DRM formats for sampling usage:
[gamescope] [Info]  vulkan:   AR24 (0x34325241)
[gamescope] [Info]  vulkan:   XR24 (0x34325258)
[gamescope] [Info]  vulkan:   AB24 (0x34324241)
[gamescope] [Info]  vulkan:   XB24 (0x34324258)
[gamescope] [Info]  vulkan:   RG16 (0x36314752)
[gamescope] [Info]  vulkan:   NV12 (0x3231564E)
[gamescope] [Info]  vulkan:   AB4H (0x48344241)
[gamescope] [Info]  vulkan:   XB4H (0x48344258)
[gamescope] [Info]  vulkan:   AB30 (0x30334241)
[gamescope] [Info]  vulkan:   XB30 (0x30334258)
[gamescope] [Info]  vulkan:   AR30 (0x30335241)
[gamescope] [Info]  vulkan:   XR30 (0x30335258)
[gamescope] [Info]  vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0
[gamescope] [Info]  wlserver: Using explicit sync when available
[gamescope] [Info]  wlserver: Running compositor on wayland display 'gamescope-0'
[gamescope] [Info]  wlserver: [backend/headless/backend.c:17] Starting headless backend
[gamescope] [Error] wlserver: Gamescope built without libei, XTEST will not be available!
[gamescope] [Info]  wlserver: [xwayland/server.c:107] Starting Xwayland on :1
[W][86601.060845] pw.conf      | [          conf.c: 1214 try_load_conf()] can't load config client.conf: No such file or directory
[E][86601.060872] pw.conf      | [          conf.c: 1243 pw_conf_load_conf_for_context()] can't load config client.conf: No such file or directory
[gamescope] [Error] pipewire: pw_context_new failed
Warning: failed to setup PipeWire, screen capture won't be available
[gamescope] [Info]  vblank: Using timerfd.
Selected GPU 0: NVIDIA GeForce RTX 3090, type: DiscreteGpu
[gamescope] [Warn]  xwm: got the same buffer committed twice, ignoring.
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Unsupported maximum keycode 708, clipping.
>                   X11 cannot support keycodes above 255.
Errors from xkbcomp are not fatal to the X server

wsy2220 avatar Sep 12 '24 17:09 wsy2220

In my case it was a dependency issue and it also required adding the build folder to PATH like @wsy2220 did, unfortunately I don't remember the details anymore. After resolving those issues gamescope worked like a charm.

peltax avatar Sep 12 '24 18:09 peltax

gamescope vkcube
[gamescope] [Info]  console: gamescope version 3.15.13.plus1 (gcc 14.2.1)
No CAP_SYS_NICE, falling back to regular-priority compute and threads.
Performance will be affected.
[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts'
[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope'
[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope/common'
[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/inspect.lua' (id: 0)
[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/modegen.lua' (id: 1)
[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/util.lua' (id: 2)
[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope/displays'
[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/asus.rogally.lcd.lua' (id: 3)
[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/deckhd.steamdeck.deckhd-lcd.lua' (id: 4)
[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/valve.steamdeck.lcd.lua' (id: 5)
[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/valve.steamdeck.oled.lua' (id: 6)
[gamescope] [Info]  scriptmgr: Loading scripts from: '/etc/gamescope/scripts'
[gamescope] [Warn]  scriptmgr: Directory '/etc/gamescope/scripts' does not exist
[gamescope] [Info]  scriptmgr: Loading scripts from: '/home/joseph/.config/gamescope/scripts'
[gamescope] [Warn]  scriptmgr: Directory '/home/joseph/.config/gamescope/scripts' does not exist
[gamescope] [Info]  vulkan: selecting physical device 'NVIDIA GeForce RTX 3070': queue family 2 (general queue family 0)
[gamescope] [Info]  vulkan: physical device supports DRM format modifiers
[gamescope] [Info]  wlserver: [backend/headless/backend.c:67] Creating headless backend
[gamescope] [Error] vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x38344241 (VkResult: 0)
[gamescope] [Error] vulkan: vkGetPhysicalDeviceFormatProperties2 returned zero modifiers for DRM format 0x38344258 (VkResult: 0)
[gamescope] [Info]  vulkan: supported DRM formats for sampling usage:
[gamescope] [Info]  vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0
gamescope: types/wlr_linux_dmabuf_v1.c:532: feedback_compile: Assertion `table_len > 0' failed.
fish: Job 1, 'gamescope vkcube' terminated by signal SIGABRT (Abort)

LethalManBoob avatar Nov 04 '24 11:11 LethalManBoob

@LethalManBoob I have the exact same output as you (minus the GPU device)

GeorgeZack avatar Dec 28 '24 00:12 GeorgeZack

This issue has been automatically closed as part of a cleanup process to help the team manage issues more effectively.

If the problem still persists, feel free to comment and we will gladly reopen it.

github-actions[bot] avatar May 30 '25 00:05 github-actions[bot]