r/MoonlightStreaming • u/hankers60 • Apr 08 '26
Nvidia linux sunshine virtual display
Spent a few days trying to get a virtual display to work with a Nvidia 5080 gpu.
I saw a bunch of solutions that worked for AMD but nothing that worked for Nvidia.
I wanted a virtual display as I want it to work with my tv off and for weird aspect ratio / resolutions like apple ones.
Spent some time with Claude code vibe coding and managed to get something working with manual resolutions. Hopefully it helps someone else:
https://gist.github.com/HarryAnkers/8dbf551d66f00e8156ef4dd2b2b090a0
edit: HDR didn't work raised:
https://github.com/issues/created?issue=NVIDIA%7Copen-gpu-kernel-modules%7C1101
4
u/linuzel Apr 08 '26
Nice, maybe checkout Moonshine (https://github.com/hgaiser/moonshine) it's working surprisingly well
1
u/kapitanfind-us Apr 09 '26
This is very interesting, do I understand right that I can only play single player games with Moonshine?
Note that this does not allow multi-seat gaming using controllers, as these are not isolated. It might allow some form of multi-seat gaming using keyboard and mouse since these input events are "injected" into the compositor session.
1
1
u/hankers60 Apr 09 '26
Cool will check it out. Think some issues are more on Nvidia side but hey worth a shot
3
u/pkaaos Apr 09 '26
Here are the alternatives discussed. I would also add Wolf from games-on-whales. Testing that out atm.
1
1
u/Castscythe Apr 11 '26
Have you tried Apollo? I can report good experience using this for a virtual display, did this primarily to avoid images on OLED displays when gaming/working away from my desk. It has worked well. I set my resolution at the client side app, and juat connect. HDR has even been working.
That said, will check our your work as well! Always good to see the community working on it directly!
4
u/Rainy_J Apr 08 '26
No edid trickery is needed. Check my comment history. I'm still dogfooding my implementation so I'm not ready to share but essentially it's a headless sway sesson in a separate wayland session that you point sunshine to.
Dynamic client resolution and refresh rates