Skip to content


Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time
  1. About
  2. Installation
  3. Usage
  4. Documentation
  5. Help


Xpra is known as "screen for X" : its seamless mode allows you to run X11 programs, usually on a remote host, direct their display to your local machine, and then to disconnect from these programs and reconnect from the same or another machine(s), without losing any state. Effectively giving you remote access to individual graphical applications.
It can also be used to access existing desktop sessions and start remote desktop sessions.

Xpra is open-source (GPLv2+) with clients available for many supported platforms and the server includes a built-in HTML5 client.
Xpra is usable over a wide variety of network protocols and does its best to adapt to any network conditions.

Xpra forwards and synchronizes many extra desktop features which allows remote applications to integrate transparently into the client's desktop environment: audio input and output, printers, clipboard, system trays, notifications, webcams, etc

It can also open documents and URLs remotely, display high bit depth content and it will try honour the display's DPI.


Official stable downloads

All the packages are signed. There are also beta builds available.
For more information, see xpra downloads

Build from source

git clone; cd xpra
python3 ./ install

For more details, see building from source.


Seamless Mode

To start an xterm on a remote host and display it locally:

xpra start ssh://USER@HOST/ --start=xterm

(both xpra and xterm must be installed on HOST).
For more examples, see usage.


To view an existing desktop session running on a remote host:

xpra shadow ssh://USER@HOST/

Network Access

Xpra servers can support many different types of connections using a single TCP port: SSL, SSH, (secure) http / websockets, RFB, etc..
Connections can be secured using encryption and many authentication modules.
Sessions can be automatically announced on LANs using multicast DNS so that clients can connect more easily using a GUI (ie: xpra mdns-gui).
Its flexible proxy server can be used as a relay or front end for multiple server sessions.


There is extensive documentation right here for the current development version.
This documentation is also included with each release.

For more generic version-agnostic information, checkout the wiki.


Make sure to check the FAQ, your question may already be answered there.
You can send your questions to the mailing list or join us on the IRC channel: #xpra on
If you have hit a bug (sorry about that!), please see reporting bugs.