Xpra

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Xpra
Original author(s) Nathaniel Smith
Developer(s) Nathaniel Smith, Antoine Martin
Initial release February 20, 2008 (2008-02-20)
Stable release 0.12 / 2014
Development status Active
Written in Python
Operating system Unix-like, MS Windows, Mac OS X
Available in English
License GNU General Public License
Website xpra.org

xpra or X Persistent Remote Applications is a tool which allows you to run X clients usually on a remote host and then direct their display to your local machine without losing any state.[1]

It differs from standard X forwarding in that it allows disconnection and reconnection without disrupting the forwarded application. It differs from VNC and similar remote display technologies in that xpra is rootless: i.e., applications forwarded by xpra appear on your desktop as normal windows managed by your window manager, rather than being all "trapped in a box together". Xpra also uses a custom protocol that is self-tuning and relatively latency-insensitive, and thus is usable over worse links than standard X.

The idea for Xpra was inspired after the original author's experience of attempting to use various NX technology based setups.[2]

Operation[edit]

The display server manages the INPUT and the OUTPUT for all of its clients. Xpra acts like an compositing window manager

Xpra connects as a compositing window manager to an Xvfb display server. However, instead of combining the window images to present on the screen, it takes the window images and stuffs them into a network connection to the xpra client, which then displays them onto the remote screen. Mind, the server also supports direct attachment, then it will behave only as persistent application server, for example if there is only X server available at the remote end. It also acts as a window manager for the X server it is running against, but it doesn't actually have any window manager policy built into it. Instead, it takes all the window management requests from the applications, sends them over the wire to the client, who then issues those same requests on the real display, waits for further answer the real window manager gives, and then forwards that answer back to the xpra server.

See also[edit]

  • GNU Screen and tmux - terminal multiplexers for console-mode (text-mode) applications
  • xmove - a tool allows you to move programs between X Window System displays
  • guievict - a system for checkpointing and migrating the GUI of an X window application
  • the lbxproxy tool, which allows disconnecting and reconnecting [1]

References[edit]

  1. ^ Michael Larabel (2013-08-19). "XPRA: Persistent Remote Applications On X". Phoronix. 
  2. ^ Smith, Nathaniel (2009-07-25). "Comment #343389". Google releases Neatx NX server. LWN. Retrieved 2009-07-25. ... I was so frustrated that I wrote a competitor, 'xpra'.