Well, basically what happens is that this laptop, an MSI Delta 15, doesn’t have a muxswitch, and therefore, the integrated graphics processor (IGPU) is responsible for sending video to the laptop screen. The problem is, I have an external monitor connected via USB-C DisplayPort directly to the RX 6700M that comes with this laptop. This is to bypass the IGPU and avoid losing FPS, but in KDE, even though the port is physically controlled by the RX 6700M, the IGPU is still responsible for sending the image, which doesn’t happen in Windows, of course. I solved this using this:
KWIN_DRM_DEVICES
Can be set to explicitly tell kwin_wayland which GPU(s) to use. The format is a colon-separated list, like this: /dev/dri/card1:/dev/dri/card0. Since the card* file order is not stable, using the symlinks in /dev/dri/by-path is also supported, like this: KWIN_DRM_DEVICES=“/dev/dri/by-path/pci-0000:03:00.0-card:/dev/dri/by-path/pci-0000:59:00.0-card” (note that the colons in the file name are escaped with ).
I basically forced KWin to use the DGPU for everything.
I needed to provide some context; here’s the reason for this post. With the arrival of KDE 6.7, this is no longer possible for me without running into problems. This command now causes a black screen (specifically on the laptop screen, which is the one physically controlling the Laptop screen), and from my point of view, it’s not a bug; it’s how KWin now handles the situation.