ValveSoftware / SteamVR-for-Linux

Issue tracker for the Linux port of SteamVR
933 stars 45 forks source link

[BUG] Room setup only launches once #694

Closed makinbacon21 closed 6 months ago

makinbacon21 commented 6 months ago

Describe the bug Using the fix in #667 , I am able to launch SteamVR on Fedora Wayland, but unfortunately Room Setup does not launch.

To Reproduce Steps to reproduce the behavior:

  1. Launch a clean install of SteamVR with the fixes from #667 applied
  2. Try and select the room setup prompt
  3. Observe headset says Next Up Room Setup

Expected behavior Room Setup would launch and behave as normal.

System Information (please complete the following information):

Screenshots

image

Logs

Sidenote, this section and the logs below are not listed in the template used when you try to create a new issue, but they are in issue_template.md and people have been told off for not having them in their issues. Highly recommend someone take a look at the GitHub issue template config to make sure it's as expected.

wallcarpet40 commented 6 months ago

I was playing around with this today and I noticed, while running SteamVR from the terminal that ~/.local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/steamvr_room_setup.sh was trying to access a runtime-directory that does not exist. More specifically on line 51:

VRBINDIR=${ROOT}/../../../runtime/bin

Changing that line to:

VRBINDIR=${ROOT}/../../../bin solves that problem.

edit: After upgrading to SteamVR Beta 2.54, I also need to add export SDL_VIDEODRIVER=x11 to ~/.local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/steamvr_room_setup.sh

After that, the Room Setup is able to run, but after I close the Room Setup, it will not start again, unless SteamVR is restarted.

TTimo commented 6 months ago

Highly recommend someone take a look at the GitHub issue template config to make sure it's as expected.

Thanks, I didn't realize github wouldn't actually pickup my edits to the bug report template .. should be good now.

wallcarpet40 commented 6 months ago

Steam client version (1714854927) SteamVR version: 2.54 Beta Distribution: Fedora 40, KDE Plasma 6, Wayland

After adding the fixes in my first comment and after the first successful Room Setup launch, if I try to re-open Room Setup again a bunch of times, I see messages in the vr_client_vrmonitor.txt saying:

Wed May 08 2024 22:17:19.854948 [Info] - Returning AlreadyRunning because process 13645 is running for process openvr.tool.steamvr_room_setup
Wed May 08 2024 22:17:21.598949 [Info] - Returning AlreadyRunning because process 13645 is running for process openvr.tool.steamvr_room_setup
Wed May 08 2024 22:17:23.331964 [Info] - Returning AlreadyRunning because process 13645 is running for process openvr.tool.steamvr_room_setup
Wed May 08 2024 22:17:24.985950 [Info] - Returning AlreadyRunning because process 13645 is running for process openvr.tool.steamvr_room_setup
Wed May 08 2024 22:17:26.575927 [Info] - Returning AlreadyRunning because process 13645 is running for process openvr.tool.steamvr_room_setup
Wed May 08 2024 22:17:27.955968 [Info] - Returning AlreadyRunning because process 13645 is running for process openvr.tool.steamvr_room_setup

Process 13645 is closed after I closed Room Setup, but somehow vrmonitor still thinks it's open, so I'm guessing the Room Setup does not exit cleanly or something.

My logs and system report: steam-logs.tar.gz https://gist.github.com/wallcarpet40/7ea07ddbaac53a8ad2e365768fc4d7a4

steam-minidumps.tar.gz

ToasterUwU commented 6 months ago

I have a similar issue. With the current stable version 2.5.4 i get a popup that tells me that it couldnt start the room setup because some other process is already starting. I fogot the exact wording, but essensially "Can run it, it already is"

The fixes that @wallcarpet40 describes didnt work for me, maybe i just misunderstood something or they left something out, idk. But the beta "previous" which gives me the 2.4.4 version solved the issue. So i went back to 2.4.4, setup my room, went back to 2.5.4 and used it from there

makinbacon21 commented 6 months ago

When I launch SteamVR on 2.5.4 it launches what should be the room setup window, but it insta crashes. image

makinbacon21 commented 6 months ago

https://hastebin.com/share/ihavasiqok.kotlin steam-logs.tar.gz steam-minidumps.tar.gz

TTimo commented 6 months ago

To catch up on some fixes that haven't shipped in beta yet:

(they are from the 2.5.5 hotfix, you don't need them if you are running stable .. but you should stick with beta)

I don't think any of this is specific to Fedora so I'm repurposing this issue and closing several duplicate bugs.

ToasterUwU commented 6 months ago

Not even the Beta with the fixes, or the beta alone, or the stable hotfix alone work for me. With all of them its the same issue where room setup wont open even once. Im on NixOS like in #699 but for me it doesnt seem to help. I have run out of ideas on what to do. I would appreciate some help.

The "fix" that worked before (like mentioned in my previous comment) doesnt help anymore.

ToasterUwU commented 6 months ago

Ok, i found a janky workaround.

I start the stable version up, close the popup about not being able to start Room Setup because its already running, i go in the terminal and navigate to the room setup executable (not the bash script) and run it. It shows up with a black screen and crashes instantly. And now, after that i can click on the burger menu of the small steamvr window that shows the controllers and all, click Room Setup and it will startup fine and work. Im seriously amazed on how bad and broken SteamVR on Linux is.. But whatever, as long as i have some way of making it work.

wallcarpet40 commented 6 months ago

This needs retesting. It was fixed in the latest SteamVR beta (2.6.2). I tested it with Fedora 40 and seems to work.

However: on Fedora 40, I still need to add export SDL_VIDEODRIVER=x11 to ~/.local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/steamvr_room_setup.sh to get it to launch at all.

TTimo commented 6 months ago

Thanks @wallcarpet40. You raise a good point, the SDL_VIDEODRIVER=x11 fix for Fedora needs to be more broadly applied. I'll put that on the list of stuff to look at.

The primary issue here is addressed, so I'm closing this.