event-hook

Linux setup (EventHook)

Install runtime libraries, then run under a display (or Xvfb):

sudo apt-get install -y libx11-6 libxext6 libxfixes3 libxtst6 libcups2t64 xclip xvfb || \
  sudo apt-get install -y libx11-6 libxext6 libxfixes3 libxtst6 libcups2 xclip xvfb
dotnet run --project examples/Event.Hook.ConsoleApp.Example -f net10.0
# or headless:
xvfb-run -a dotnet run --project examples/Event.Hook.ConsoleApp.Example -f net10.0

Requires DISPLAY. Keyboard and mouse use the XRecord extension (libxtst6); clipboard, windows, and hotkeys use X11 APIs.

No Win32 message pump and no HWND. EventHook runs its own XNextEvent thread for X11. Missing DISPLAY / WAYLAND_DISPLAYDisplayUnavailable. Native Wayland-only sessions return NotSupportedOnPlatform for clipboard, windows, and hotkeys.

On Ubuntu 24.04 the CUPS library package is libcups2t64 (provides libcups.so.2). Older releases use libcups2.

Wayland / no X11

sudo usermod -aG input "$USER"
# then log out and back in

Print

Uses CUPS (libcups). Missing library or scheduler → NativeFailure.