When using Wivrn the game hits 90fps consistently and runs extremely good, even in full lobbies. ALVR just has either latency problems or reprojection issues. i have not used monado as i use a quest 2.
When using Wivrn the game hits 90fps consistently and runs extremely good, even in full lobbies. ALVR just has either latency problems or reprojection issues. i have not used monado as i use a quest 2.
SteamVR required setting the enableLinuxVulkanAsync flag to true in steamvr.vrsettings file, after which it became playable for the most part, unless the frame rate is really low. Monado has issues with the alignment of controllers and trackers, as well as the general viewport/lens correction not looking right, it also suffers from the same issues as SteamVR when the frame rate is low.
Ever since the SteamVR update that brought proper Steam Link support to Linux, SteamVR with the official Steam Link app has been working flawlessly.
On WiVRn, VRChat also works flawlessly. I use WiVRn for wired PCVR.
Everything worked fine, any issue, Monado perforned better than SteamVR
After using Proton-GE-RTSP (Github: SpookySkeletons/proton-ge-rtsp) video players and all other features work as expected.
Performance is a bit lackluster even on high-end hardware (7800x3d and 7900xtx), so asynchronous reprojection is pretty much always needed (and not longer broken as point out earlier this year).
Setting SteamVR resolution to a fixed value helps a lot to stabilize the framerate.
Using GE-Proton-10-20-rtsp19
WiVRn (7/10):
My experience with VRChat on Linux through WiVRn has been pretty enjoyable so far.
There are, however, some glaring issues that still require more troubleshooting, and might cause issues for other users as well.
In certain cases, live streams will not load and will show an audio-only icon on the screen. Trying to restart or resync the player crashes the game. I only used the newest version of GE-Proton-RTSP as of writing.
General performance is fine. On par with Windows or in some cases even better. Video players decrease performance in general. Minor graphical glitches on loading screens when using OpenComposite. I haven't tested xrizer extensively due to the lack of native FBT support.
Pico Motion Trackers work fine through OpenComposite.
ALVR/SteamVR (0/10):
I had issues with the desktop-viewing function of SteamVR crashing SteamVR and Steam. This is not acceptable for my usecase.
No further troubleshooting has been done as of now.
Worked on both ALVR and WiVRn perfectly without needing any workarounds.
SteamVR:
As others have reported, without motion smoothing, anything less than just under max refresh rate feels stuttery and ghosty. For an HMD like the index, lowering the max refresh rate from 144 to 90 is a must if you want SteamVR.
Monado:
Everything just worked out of the box for me using OpenComposite, and is a perfect experience in game play as far as I could tell. Loading screens looked flat and oddly nontransparent, but it is purely aesthetic.
Proton-GE-rtsp:
For some reason with 10-15 video players were still broken, but 9-22 worked so you might have to play around with that I guess.
ALVR: Very realiable but suffers from awful reprojection issues.
WiVRn: Frequently crashes the game or even freezes my System, but a much smoother and clearer experience overall.
I have a relatively good PC, so VR Chat isn't the worst for me, but when I play and frames drop, reprojection does its thing and it sucks. I was able to make it better by turning on legacy reprojection (which everybody should be doing for all games because it is that much better for every game), but it still sucked because VR on linux is janky. I couldn't test with monado/wivrn because I have issues with it due to my quest, where even in the streamer app, button presses for menus take forever to register, and it happens in game too making it unplayable, hence no rating for it.
SteamVR:
Since VRChat almost never hits the headset's refresh rate, it relies on asynchronous reprojection to create a pleasant experience. Exactly this feature has been broken in SteamVR on Linux for years, resulting in nauseating frame flickering. It's only playable when FPS are really high.
Full body tracking works.
Monado:
With Monado through OpenComposite, the game runs smooth and is generally playable, but the position of the hands is offset by about 5-10 cm, hurting immersion.
Full body tracking not tested.
Proton-GE RTSP
Works perfectly with WiVRn (apart from some issues with loading screens, which can be fixed by using the experimental xrizer branch) - ALVR has some frame issues for me due to the lack of fully functional reprojection, and has major stutters during video playback
Runs fine under WiVRn.
Works great. WiVRn displays the world loading screens a little weird but everything works as it is supposed to.
Works flawlessly with Proton-GE-rtsp.
Tested both with an Index using SteamVR and Monado, and a Quest 2 with WiVRn.
it was difficult to setup envision on Arch to play games with WiVRn but after discovering that I had a 4 year old pipewire config and removed it. things ran more smoothly. VRChat when a video player in the world will micro stutter terribly with SteamVR/ALVR and under envison/WiVRn it works perfectly fine
Proton GE RTSP:
When joining worlds like popcorn palace, the video players run at fast-forward speed until they catch up, however the audio and video is never correctly synced even after it catches up.
Monado:
During world loading, the loading screen is not centered, and has a strange white border, and you can sometimes also see some hints of the loading world.
SteamVR:
Async reprojection is mostly non-functional regardless of version which makes sustaining high FPS incredibly important, and you also have constant double images while moving head.
Tundra trackers work with both without any issues.
steamVR nearly unusable with major motion blur/graphical glitches at higher refresh rates, playable if there's really no other option
solid experience through Monado using OpenComposite and the steamVR Lighthouse driver and wlx-overlay-s, comparable to and in some situations outperforms windows - use GE-Proton-RTSP for proper fixes relating to video players
SlimeVR works for the most part with solarXR integration branch built using Envision, and alternatively works well using OSC
Very little to complain about, for the time being requires a Custom Proton Version for proper video player and live stream support
Works basically flawlessly using Proton-GE-rtsp and OpenComposite. Haven't tried XRizer much, but from my usage it's seemed flawless for me. Documentation for setup on NixOS is pretty good, too. Nixpkgs overlays such as nixpkgs-xr for nightly builds of XR packages like Monado, Wlx-Overlay-s, Wayvr-Dashboard and others exist and makes it feel truly cutting edge. Performance is excellent with AMD only hardware 7900XTX and 5800x3D. Video players cause performance dips, but that's to be expected. Assuming 60fps, it will probably dip by about 10fps when looking at it or when it's active. FBT works flawlessly as long as STEAMVR_LH_ENABLE is set in the Monado environment.
Overall very nice experience.
Works flawlessly. The loading screens are kinda odd since both the "Loading" text and preview image are just of to the side stacked on top of each other and not angled right, but it doesnt affect anything at all, you can still read if its loading or connecting, you can still play the Game just fine. It just looks kinda odd.
Works pretty much perfectly.
Non-16:9 videos on video players (at least ProTV3) are stretched, while on Windows they are letterboxed. Not sure if this is a Unity issue.
Running OS+VRChat on an HDD results in EAC errors, probably due to a speed bottleneck. Moving to an SSD resolved it for me.
ToNSaveManager also works well when run with ProtonTricks (FlatPak com.github.Matoking.protontricks) in the VRChat prefix. (May need to set flatpak permissions to allow it access to the ToNSaveManager.exe)
I use flatpak run --command=protontricks-launch com.github.Matoking.protontricks --appid 438100 ./ToNSaveManager.exe to run it, plus notify-send to tell me when my launch script runs (since it takes a while to launch) and if it stops.
OpenVR: OpenComposite
Proton: GE-Proton-rtsp or GE-Proton
Distros: Fedora 41, Arch
Works flawlessly (with Proton-GE-rtsp)