Open Quackdoc opened 9 months ago
There is a plan for this, at least. https://github.com/ids1024/reis has a Rust implementation of the libei protcol. That needs to be integrated into the compositor, then the remote desktop portal can be added.
Though when I looked for things that use the portal, it seemed like the vnc and rdp implementations for wlroots/Gnome/KDE all require DE specific APIs, and as far as I could tell there isn't currently a vnc implementation that just uses xdg desktop portals.
Not sure what KDE connect requires.
Not sure what KDE connect requires.
KDE connect uses remotedesktop portal for injecting input https://github.com/KDE/kdeconnect-kde/blob/87a33d12936f2a3c58e306564ce78b0caadfa001/plugins/mousepad/waylandremoteinput.cpp#L63 , so any interfaces besides the pipewire/screencast stuff are required.
Another tool that seemingly uses the portal is the remote desktop software RustDesk: https://github.com/rustdesk/rustdesk/blob/3f7244f23f94e3d974cee86f81cd3f6d2673655d/libs/scrap/src/wayland/remote_desktop_portal.rs#L8
Finally, for auto-typing of passwords, my project https://github.com/quexten/goldwarden uses the portal too (hence I checked this thread).
I assumed KDE Connect was more KDE-specific, but I guess the documentation emphasizes using standards that work across desktops. Which is great! Now that the Wayland ecosystem is standards for these things. I've only used it with gsconnect
, which re-implements KDE Connect in a Gnome Shell extension.
So yeah, I guess KDE Connect and Rustdesk are the things to test this with. As well as Input Leap.
For keyboard emulation, wtype
currently works, using the zwp_virtual_keyboard_v1
protocol. But libei is probably overall a better solution for that.
Another good example, using both RemoteDesktop and InputCapture (and ConnectToEIS) is https://github.com/input-leap/input-leap -- the only good working implementation so far is gnome's portal.
Edit: https://github.com/feschber/lan-mouse supports more methods and is overall more interesting.
There's still work to properly integrate ei into smithay and cosmic-comp, but https://github.com/Smithay/smithay/pull/1388 has a rough prototype.
I created an issue on cosmic-comp related to this before I realized it was related to portals and not the compositor. Is this issue also for InputCapture?
My use case is for deskflow/synergy usage, which requires InputCapture for the server and RemoteDesktop for the client.
i realize this is fairly low priority, especially for its intended use case. however, this portal also allows kde connect to have input through its virtual keyboard and mouse. this is actually fairly important for a couple reasons, but the largest one for me personally is it allows me to use my phone as a input device, which helps a lot with my RSI. So it does have some accessibility benefits as well as virtual and remote desktop.