Summary
The sender currently requires Windows 10/11 due to DXGI Desktop Duplication and SendInput. Add a Linux sender so users can control Linux machines from the viewer.
Scope
- Screen capture: X11 via
libxcb-shm / XShmGetImage, or Wayland via wlr-screencopy protocol (wlroots compositors) or PipeWire screen capture (GNOME/KDE)
- Input injection:
uinput kernel module (/dev/uinput) for mouse and keyboard
- Build target:
net10.0 (remove net10.0-windows TFM restriction in Sender.csproj)
- The sender already uses interfaces (
IScreenCapturer, IInputInjector) — implement Linux versions and wire them up via DI based on runtime OS detection
Related
Difficulty
High — requires knowledge of Linux display server APIs and native interop.
Summary
The sender currently requires Windows 10/11 due to DXGI Desktop Duplication and
SendInput. Add a Linux sender so users can control Linux machines from the viewer.Scope
libxcb-shm/XShmGetImage, or Wayland viawlr-screencopyprotocol (wlroots compositors) or PipeWire screen capture (GNOME/KDE)uinputkernel module (/dev/uinput) for mouse and keyboardnet10.0(removenet10.0-windowsTFM restriction inSender.csproj)IScreenCapturer,IInputInjector) — implement Linux versions and wire them up via DI based on runtime OS detectionRelated
Difficulty
High — requires knowledge of Linux display server APIs and native interop.