Skip to main content

Xpra for JupyterLab

Project description

build

jupyter-xprahtml5-proxy

Integrate Xpra in your Jupyter environment for an fast, feature-rich and easy to use remote desktop in the browser.

Requirements

  • Python 3.6+
  • Jupyter Notebook 6.0+
  • JupyterLab >= 3.x
  • jupyter-server-proxy >= 3.1.0

This package executes the xpra command. This command assumes the xpra command is available in the environment's $PATH.

Security

Xpra supports password and encryption.
Both are NOT required, if you can trust everyone, who can log in to the host where your JupyterLab is running. (incl. jupyter-server-proxy, jupyter-xprahtml5-proxy and Xpra-HTML5)

BUT (!!!)
if you are on a multiuser system, where you CANNOT trust everyone,
you must(!) ensure that your Xpra session is secured by at least a password.

Currently this requires

Xpra

Xpra is an open-source multi-platform persistent remote display solution for forwarding applications and desktop screens. It allows you to run X11 programs, usually on a remote host, and direct their display to your local machine.
Best of it. It is fast, fast, fast and comes with a build-in html5 client to allow remote.

Jupyter-Server-Proxy

Jupyter-Server-Proxy lets you run arbitrary external processes (such as Xpra-HTML5) alongside your notebook, and provide authenticated web access to them.

Install

Create and Activate Environment

virtualenv -p python3 venv
source venv/bin/activate

Install jupyter-xprahtml5-proxy

pip install git+https://github.com/FZJ-JSC/jupyter-xprahtml5-proxy.git

Enable jupyter-xprahtml5-proxy Extensions

For Jupyter Classic, activate the jupyter-server-proxy extension:

jupyter serverextension enable --sys-prefix jupyter_server_proxy

For Jupyter Lab, install the @jupyterlab/server-proxy extension:

jupyter labextension install @jupyterlab/server-proxy
jupyter lab build

Start Jupyter Classic or Jupyter Lab

Click on the Xpra icon from the Jupyter Lab Launcher or the Xpra item from the New dropdown in Jupyter Classic.
Connect to your database as instructed in the Quickstart section.

Configuration

This package calls xpra with a bunch of settings. Please read the Xpra manual if you want to know the details.
You have to modify setup_xprahtml5() in jupyter_xprahtml5_proxy/__init__.py for change.

Credits

  • Xpra
  • jupyter-server-proxy

License

BSD 3-Clause

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter-xprahtml5-proxy-0.3.5.tar.gz (17.7 kB view details)

Uploaded Source

Built Distribution

jupyter_xprahtml5_proxy-0.3.5-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file jupyter-xprahtml5-proxy-0.3.5.tar.gz.

File metadata

File hashes

Hashes for jupyter-xprahtml5-proxy-0.3.5.tar.gz
Algorithm Hash digest
SHA256 71343b98d06d8c36a74a9368c5919414cb77990f01b12c911217391b25935b2b
MD5 6891d040e34fd77af937358d947d5c70
BLAKE2b-256 c43106e5728fdc313b9447b995673db32c1d686c7265a21542a9941be96068d7

See more details on using hashes here.

File details

Details for the file jupyter_xprahtml5_proxy-0.3.5-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyter_xprahtml5_proxy-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d1938840ae56e41f65495920d82078fb0a031d8a67208ce6519222a5b066e61a
MD5 50d21e95497ce298b248af63a0e95491
BLAKE2b-256 d85499d1f319573692fa0e0a4d84a2bdcf383726ca98ff9838c9a7417c941b09

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page