Building Xpra
August 7, 2026 · View on GitHub
Build Xpra from source when you need a development checkout, a custom installation, or packages for a platform not covered by the usual downloads. Start with the platform guide, then install dependencies before running the build commands.
Platform guides
Choose the instructions that match the system where you will build Xpra.
Fedora, CentOS, and RHEL
Build RPM packages and install the dependencies for Red Hat-based systems.
Debian and Ubuntu
Build Debian packages or install Xpra from source on Debian-based systems.
Microsoft Windows
Set up the Windows build environment and produce the Windows installer.
macOS
Build the macOS application bundle and its platform dependencies.
Other platforms
See the general instructions for platforms not covered by the dedicated guides.
Download the source
Use one of the following locations, depending on whether you need the current development tree or a released source archive.
GitHub
The main repository contains the current Xpra source. The HTML5 client lives in its own repository:
Release archives
Download released source packages from PyPI or xpra.org. See source metrics for more information about the codebase.
Build from a checkout
Install the required dependencies first, then clone and install Xpra:
Source installation
git clone https://github.com/Xpra-org/xpra
cd xpra
python3 ./setup.py install --prefix=/usr --single-version-externally-managed --root=/
cp fs/bin/xpra* fs/bin/run_scaled /usr/bin/
Build caveats
Keep source and binary installations separate, and make sure the Python version matches the branch you are building.
Do not mix installation methods
Do not mix a source installation with binary packages. Remove one installation completely before installing the other.
Python versions
Current Xpra versions require Python 3. For Python 2, use the 3.x LTS branch; see the supported versions.
Why copy the scripts?
The final step installs Xpra’s own scripts, replacing the unusable scripts that setuptools may otherwise mangle.