diff --git a/gnu/local.mk b/gnu/local.mk index c6f580f4ff..8c60ab2474 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2133,8 +2133,8 @@ dist_patch_DATA = \ %D%/packages/patches/xplanet-1.3.1-libdisplay_DisplayOutput.cpp.patch \ %D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch \ %D%/packages/patches/xplanet-1.3.1-xpUtil-Add2017LeapSecond.cpp.patch \ - %D%/packages/patches/xpra-4.2-systemd-run.patch \ - %D%/packages/patches/xpra-4.2-install_libs.patch \ + %D%/packages/patches/xpra-5.0-systemd-run.patch \ + %D%/packages/patches/xpra-5.0-install_libs.patch \ %D%/packages/patches/xsane-fix-memory-leak.patch \ %D%/packages/patches/xsane-fix-pdf-floats.patch \ %D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \ diff --git a/gnu/packages/patches/xpra-4.2-install_libs.patch b/gnu/packages/patches/xpra-5.0-install_libs.patch similarity index 53% rename from gnu/packages/patches/xpra-4.2-install_libs.patch rename to gnu/packages/patches/xpra-5.0-install_libs.patch index 65d489a3b8..4d40bf1f79 100644 --- a/gnu/packages/patches/xpra-4.2-install_libs.patch +++ b/gnu/packages/patches/xpra-5.0-install_libs.patch @@ -1,18 +1,32 @@ +Distribution specific patch, not going upstream + This workaround for Gentoo interferes with our use of --no-compile during the 'install stage. ---- a/setup.py 2022-01-04 10:10:05.039825000 +0100 -+++ b/setup.py 2022-01-06 15:10:31.952656039 +0100 -@@ -589,8 +589,6 @@ - }) +diff --git a/setup.py b/setup.py +index e254bf99c..90db55c3f 100755 +--- a/setup.py ++++ b/setup.py +@@ -663,8 +663,6 @@ if modules_ENABLED: + # Utility methods for building with Cython def add_cython_ext(*args, **kwargs): - if "--no-compile" in sys.argv and not ("build" in sys.argv and "install" in sys.argv): - return - assert cython_ENABLED, "cython compilation is disabled" + if not cython_ENABLED: + raise ValueError(f"cannot build {args}: cython compilation is disabled") if cython_tracing_ENABLED: - kwargs["define_macros"] = [ -@@ -1703,14 +1701,6 @@ +@@ -1809,9 +1807,6 @@ else: + if root_prefix.endswith("/usr"): + #ie: "/" or "/usr/src/rpmbuild/BUILDROOT/xpra-0.18.0-0.20160513r12573.fc23.x86_64/" + root_prefix = root_prefix[:-4] +- for x in sys.argv: +- if x.startswith("--root="): +- root_prefix = x[len("--root="):] + print(f"install_data_override.run() root_prefix={root_prefix}") + build_xpra_conf(root_prefix) + +@@ -1955,13 +1950,6 @@ else: if uinput_ENABLED: add_data_files("lib/udev/rules.d/", ["fs/lib/udev/rules.d/71-xpra-virtual-pointer.rules"]) @@ -23,7 +37,6 @@ the 'install stage. - #otherwise we use the flags to skip pkgconfig - if ("--no-compile" in sys.argv or "--skip-build" in sys.argv) and not ("build" in sys.argv and "install" in sys.argv): - pkgconfig = no_pkgconfig -- + if OSX and "py2app" in sys.argv: import py2app #@UnresolvedImport - assert py2app is not None diff --git a/gnu/packages/patches/xpra-4.2-systemd-run.patch b/gnu/packages/patches/xpra-5.0-systemd-run.patch similarity index 69% rename from gnu/packages/patches/xpra-4.2-systemd-run.patch rename to gnu/packages/patches/xpra-5.0-systemd-run.patch index 8dfd9c82f0..437a8cc37f 100644 --- a/gnu/packages/patches/xpra-4.2-systemd-run.patch +++ b/gnu/packages/patches/xpra-5.0-systemd-run.patch @@ -1,13 +1,16 @@ +Distriction specific patch, not going upstream + Disable systemd-run if the command is not found. -diff -ru xpra-4.2~/xpra/scripts/main.py xpra-4.2/xpra/scripts/main.py ---- xpra-4.2~/xpra/scripts/main.py 2021-06-06 08:51:13.756815842 -0700 -+++ xpra-4.2/xpra/scripts/main.py 2021-06-06 16:07:13.371024486 -0700 -@@ -331,23 +331,26 @@ - if not is_systemd_pid1(): - return False # pragma: no cover - #test it: -- cmd = ["systemd-run", "--quiet", "--user", "--scope", "--", "true"] +diff --git a/xpra/scripts/main.py b/xpra/scripts/main.py +index 3813331a5..46e2c83a6 100755 +--- a/xpra/scripts/main.py ++++ b/xpra/scripts/main.py +@@ -337,23 +337,26 @@ def use_systemd_run(s) -> bool: + cmd = ["systemd-run", "--quiet"] + if getuid()!=0: + cmd += ["--user"] +- cmd += ["--scope", "--", "true"] - proc = Popen(cmd, stdout=PIPE, stderr=PIPE, shell=False) try: - proc.communicate(timeout=2) @@ -15,13 +18,13 @@ diff -ru xpra-4.2~/xpra/scripts/main.py xpra-4.2/xpra/scripts/main.py - except TimeoutExpired: # pragma: no cover - r = None - if r is None: -+ cmd = ["systemd-run", "--quiet", "--user", "--scope", "--", "true"] -+ proc = Popen(cmd, stdout=PIPE, stderr=PIPE, shell=False) - try: +- try: - proc.terminate() - except Exception: - pass -- try: ++ cmd = ["systemd-run", "--quiet", "--user", "--scope", "--", "true"] ++ proc = Popen(cmd, stdout=PIPE, stderr=PIPE, shell=False) + try: - proc.communicate(timeout=1) + proc.communicate(timeout=2) + r = proc.returncode @@ -41,5 +44,5 @@ diff -ru xpra-4.2~/xpra/scripts/main.py xpra-4.2/xpra/scripts/main.py + except FileNotFoundError: + return False - - def run_mode(script_file, error_cb, options, args, mode, defaults): + def verify_gir(): + try: diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index cd1335661b..ec846093e2 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -72,6 +72,7 @@ (define-module (gnu packages xorg) #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages check) + #:use-module (gnu packages cups) #:use-module (gnu packages compression) #:use-module (gnu packages emacs) #:use-module (gnu packages flex) @@ -6110,16 +6111,16 @@ (define-public xcompmgr (define-public xpra (package (name "xpra") - (version "4.4.6") + (version "5.0.2") (source (origin (method url-fetch) (uri (string-append "https://www.xpra.org/src/xpra-" version ".tar.xz")) (sha256 - (base32 "0d3s13wqbn9jwqp4i55mn4chgjkrckq3jx4jrq1bcjjz5agzfrq5")) - (patches (search-patches "xpra-4.2-systemd-run.patch" - "xpra-4.2-install_libs.patch")))) + (base32 "0gxv0h1spg2jl3g9cc6qxxkq6a7prmb92dqqwk0s6pvrj8w3izlk")) + (patches (search-patches "xpra-5.0-systemd-run.patch" + "xpra-5.0-install_libs.patch")))) (build-system python-build-system) (inputs (list bash-minimal ; for wrap-program @@ -6158,7 +6159,8 @@ (define-public xpra python-dbus ; For desktop notifications. dbus ; For dbus-launch command. python-lz4 ; Faster compression than zlib. - python-netifaces)) + python-netifaces + python-pycups)) (native-inputs (list pkg-config pandoc python-cython)) (arguments (list @@ -6193,7 +6195,7 @@ (define-public xpra (format #f "~s" (search-input-file inputs "bin/xauth")))) ;; Fix directory of config files. (substitute* '("xpra/scripts/config.py" - "xpra/platform/xposix/paths.py") + "xpra/platform/posix/paths.py") (("\"/etc/xpra/?\"") (string-append "\"" #$output "/etc/xpra/\""))) ;; XXX: Stolen from (gnu packages linux)