HOME

TheInfoList



OR:

xpra, abbreviated from X Persistent Remote Applications, is a set of software utilities that run X clients, typically on a remote host, and direct their display to the local machine without the X clients closing or losing any state in case the network connection between the local machine and the remote host is lost. Xpra differs from standard ''X forwarding'' primarily in allowing disconnection and reconnection without disrupting the forwarded application. It also differs from
VNC Virtual Network Computing (VNC) is a graphical desktop-sharing system that uses the Remote Frame Buffer protocol (RFB) to remotely control another computer. It transmits the keyboard and mouse input from one computer to another, relaying the g ...
and similar remote display technologies in being ''rootless'', so applications forwarded by Xpra appear on the local desktop as normal windows managed by the local
window manager A window manager is system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment. They work in conjunction ...
, rather than being all "trapped in a box together". Xpra also uses a custom protocol that is
self-tuning In control theory a self-tuning system is capable of optimizing its own internal running parameters in order to maximize or minimize the fulfilment of an objective function; typically the maximization of efficiency or error minimization. Self-tu ...
and relatively latency-insensitive, and thus is usable over worse links than standard X. The original inspiration for making Xpra came from the original author's experience of attempting to use various setups based on
NX technology NX technology, commonly known as ''NX'' or NoMachine, is a proprietary cross-platform software application for remote access, desktop sharing, virtual desktop (on Linux only) and file transfer between computers. It is developed by the Luxembou ...
.


Operation

Xpra connects as a
compositing window manager A compositing window manager, or compositor, is a window manager that provides applications with an off-screen data buffer, buffer for each window. The window manager Compositing, composites the window buffers into an image representing the screen ...
to an
Xvfb Xvfb or X virtual framebuffer is a display server implementing the X11 display server protocol. In contrast to other display servers, Xvfb performs all graphical operations in virtual memory without showing any screen output. From the point of v ...
display server. However, instead of combining the window images to present on the screen, it directs the window images into a network connection to the Xpra client, where they are displayed on the remote screen. The Xpra server also supports direct attachment, which makes it behave as a persistent application server, for example in the case where there is only an X server available at the remote end. Xpra also acts as a window manager for the X server it is running against, but it does not 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, which 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. In addition to the normal Xpra client, it also supports using an HTML 5 capable web browser as a client.


See also

*
GNU Screen GNU Screen is a terminal multiplexer, a software application that can be used to multiplex several virtual consoles, allowing a user to access multiple separate login sessions inside a single terminal window, or detach and reattach sessions from ...
and
tmux tmux is an open-source terminal multiplexer for Unix-like operating systems. It allows multiple terminal sessions to be accessed simultaneously in a single window. It is useful for running more than one command-line program at the same time. ...
  terminal multiplexers for console (terminal) applications *
xmove xmove is a computer program that allows the movement of X Window System applications between different displays and the persistence of X applications across X server restarts. It solves a problem in the design of X, where an X client (an X appli ...
  a tool that allows moving programs between X Window System displays *
Low Bandwidth X In computing, LBX, or Low Bandwidth X, is a protocol to use the X Window System over network links with low bandwidth and high latency. It was introduced in X11R6.3 ("Broadway") in 1996, but never achieved wide use. It was disabled by default as ...
  a protocol to use X over network links with low bandwidth and high latency


References


External links


How to Use Xpra to Run Linux Applications Remotely
X Window programs Remote desktop Proxy servers X servers Remote desktop software for Linux Free software programmed in Python {{free-software-stub