x11spice connects a running X server as a Spice server. It owes a debt to the excellent x11vnc project, from the libvncserver project. That project proved that this could be done, and done well. Some of the logic, notably that of scan.c, was inspired by the code in x11vnc. Example: launch a spice server on a remote pc (where x11spice is installed) via ssh, redirect the output locally and connect to it with spicy ssh $remote_host -L 5900:localhost:5900 \ "x11spice --allow-control --display :0 --password=whatever" and then locally spicy -h localhost -p 5900