Version 33 (modified by 7 years ago) (diff) | ,
---|
Packaging
How to build covers installing the required libraries and building from source, it is a pre-requisite for building packages.
Distribution Packages
And why you should generally not use them.
Distribution | Variant | Version Shipped | Known Issues |
---|---|---|---|
Fedora | Fedora 21 and 22 | 0.15.2 | Up to date (0.15.3 in "testing" queue) |
Ubuntu | Precise aka 12.04 | 0.0.7.36 | Far too many to list - not a single bug fix applied in 3.5 years! |
Ubuntu | Trusty aka 13.04 | 0.12.3 | Far too many to list - not a single bug fix applied in 15 months, avoid |
Ubuntu | Vivid aka 15.04 | 0.14.10 | 18 stable updates missing, version no longer supported, known bugs including crashes |
Debian | Squeeze Backports | 0.3.11 | Too many to list and only available in backports! (backports a broken and out of date version!) |
Debian | Wheezy | 0.3.11 | Far too many to list |
Debian | Wheezy-backports | 0.14.10 | 18 stable updates missing, version no longer supported, known bugs including crashes |
Debian | Jessie | 0.14.10 | 18 stable updates missing, version no longer supported, known bugs including crashes |
Debian | Jessie-backports | 0.14.28 | Almost up to date |
Debian | Stretch | 0.14.28 | Almost up to date |
Gentoo | Stable | 0.11.6 | branch no longer maintained - many serious bugs including total server crashes, "stable" - sigh |
Gentoo | Testing | 0.15.0 | Almost up to date, but missing some important fixes |
Arch | 0.15.3 | Good: up to date |
Last updated 2015-07-21, when 0.15.3 was the latest version available. (0.14.27 for LTS branch)
Omitted:
- because (soon) out of date: Ubuntu Utopic.
- because not available with a default installation: Debian backports and experimental.
- opensuse: no official packages
Example of some of the fixes found in later 0.14.x and 0.15.x stable releases which may be missing from distributions that got stuck at a particular minor update (ie: 0.14.10 for Debian):
- important fixes: r10197 (abysmal performance), r10160, printing broken (r10165 + r10105 + r10142), nvenc (r10000 + r10078, also on Debian / Ubuntu: r10133), r10128, r10119, opencl broken (r10024 + r10084), win32 server (#637), win32 client fix (r9751), r9997, r9983, r9970, opengl crashes (r9924 + r9871?, r9799), r9888, r9851, compatibility fixes (r9857 + r9640), r9753, paint failures (r9682), r9711, r9715, shadow fix (r9728), may crash (r9725), no transparency (r9661), leak (r9654), r9620
- more minor fixes: r10196, r10139, r10104, r10046, r10029, r9996, r9978, r9868, r9898, r9915, r9796, r9770, r9803, r9694, r9727, r9675, r9609
You can find the full list of changes merged here: wiki/Versions/PendingFixes (under commit log).
Non exhaustive list of bugs we would have backported to older branches if they were still maintained (mostly cumulative, the further back you go, the more you need):
v0.13.x
(most also apply if you're using Debian or Ubuntu's0.14.10
): r9354, r9415, r9418, r9441 (crash), r9589, r9621 (leak), r9671, r9753, #902 (r9826 - visual corruption), r9879, r9918, r9970, r8945, r9011 (leak), r9173 (race, connection errors), r8973 (races), r9003, r9003, r9005 (filtering ineffective), r8945, r8924 and r8917 (potential double free), r8788 (connection drops), r8777, r8749, r8708, r8659, r8445, r8442 (crash), r8278, r8227, r8185, r8135, r8079 (crash), r7979 (deadlock), r7524 (use disabled algorithms), r7408... and many many morev0.12.x
: r6696, r7634, r6735, r6766, r6767, r6788, r6874 (memleak!), r6913, r6915, r7002, r7004, r7111 (leak), r7146 (deadlock), r7237 (connection failure), r7239 (crashes), #632, #588, #597, #284, #600, ...v0.11.x
: r5842, r5898, r5899, r5900v0.10.x
: r5207, r5209 + r5210, r5207v0.9.x
: r4023, r4039 (and plenty more)
etc...
RPMs
The spec file can be found here: xpra.spec
The quick and easy way (tested on Fedora 20):
mkdir -p ${HOME}/rpmbuild/SOURCES/ >& /dev/null cd trunk/src ./setup.py sdist --formats=bztar cp dist/*bz2 ${HOME}/rpmbuild/SOURCES/ cp patches/* ${HOME}/rpmbuild/SOURCES/ rpmbuild -ba ../rpmbuild/xpra.spec --define 'Fedora 1' ls -s ${HOME}/rpmbuild/RPMS/*/
Shows:
1904 xpra-0.14.0-0.fc20.x86_64.rpm 2332 xpra-debuginfo-0.14.0-0.fc20.x86_64.rpm
You may need to add arguments to the rpmbuild command line to enable/disable certain features, or simply to get it to build properly on other RPM based distros.
For example, to build on CentOS 6
with a different build no, use:
rpmbuild -ba xpra.spec --define 'build_no 5'
(the flags and their purpose may vary with versions, please refer to the spec file for more definitive information)
DEBs
You can find the debian packaging files here: /debian
Debian also ships packages, though the "stable" versions are completely out of date, broken and unsupported, they should not be used.
Assuming that your build system is reasonably up to date, you should be able to build with:
cd trunk/src/ ln -sf ../debian . debuild -us -uc -b