Blog - SilverDiamond's site
Virtual screen on Linux with the NVIDIA proprietary driver
I moved to wayland after they fixed the games having blank frames each other frame issue.
But one thing was missing (that's a lie: many things were missing): The ability to edit the X11.conf and get a connector
that isn't in use to be detected as active in order to get a display without actually having one connected.
Many people would just tell you: "Get a headless HDMI/DP dongle" but there had to be a way to fool the gpu driver into giving you another display.
On Windows custom drivers for that exist that hook up a virtual display to your gpu (one was parsec virtual display, not related to parsec except using their driver).
Apparently on wayland its as simple as echo on | sudo tee /sys/class/drm/card1-DVI-D-1/status and you get a 768p display, or any other port: echo on | sudo tee /sys/class/drm/card1-DP-2/status.
But you don't want a 768p display, so copy /sys/class/drm/card1-DP-1/edid to where the edid is supposed to be stored (i am not really sure since /usr/lib/firmware/edid/ seems to be wrong if i keep getting
[ 2.188162] nvidia 0000:01:00.0: Direct firmware load for edid/custom-edid.bin failed with error -2
[ 2.188165] nvidia 0000:01:00.0: [drm] *ERROR* [CONNECTOR:101:DP-2] Requesting EDID firmware "edid/custom-edid.bin" failed (err=-2)
on boot, but it works ????).
Edit your kernel parameters to include drm.edid_firmware=DP-2:edid/custom-edid.bin, reboot then run echo on | sudo tee /sys/class/drm/card1-DP-2/status.
I haven't tested on anything except my GTX 1080 (NVIDIA Corporation GP104 [GeForce GTX 1080] (rev a1)) with Driver Version: 580.95.05.
Comments (Permission Required)
To view comments hosted on Mastodon, please grant permission on the dialog that appears when you click here.
Back to home