On Mon, 25 Sep 2023, Arun Mani J <[email protected]> wrote: > Hey all > I would like to develop a virtual monitor, regarding which I need help. The > situation is, I need to design a virtual monitor and make it a top-level > window. I should be able to move windows to this monitor, render them and do > other things which can be done in a physical monitor. > > Of course, X11 and Mutter provide APIs to create virtual monitors. but I want > it to be as DE independent as possible. So I'm looking for a low-level > solution which might interface with the Kernel to act as a universal virtual > monitor. > > The closest I can get to is DRI and KMS. But I'm stuck on how to take it > forward as in how to fake this entire scenario. > > My assumption of the situation is like, I create a file in /dev that signals > "plugging-in" of a monitor, which makes Kernel load my custom driver. Window > managers, DRIs write to this file, as in write the data to be shown on the > monitor and my driver would take care of rendering those data on a top-level > window. But I think, this won't be that easy... > > This is similar to a virtual machine, but I just want to emulate a monitor > than a processor or so. > > Any pointers and documentation regarding this is highly appreciated. Yes, I'm > new to such kinda stuff but I'm ready to invest time and learn :)
Maybe look into drm/vkms [1][2]. BR, Jani. [1] https://docs.kernel.org/gpu/vkms.html [2] https://docs.kernel.org/gpu/drm-uapi.html#using-vkms-to-test-drm-api -- Jani Nikula, Intel
