xpra: 4.3.2 -> 4.3.3 (#172682)

main
Matt Votava 2 years ago committed by GitHub
parent c1d195cc1f
commit 9abfef3f54
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 139
      pkgs/tools/X11/xpra/default.nix
  2. 16
      pkgs/tools/X11/xpra/fix-122159.patch

@ -1,13 +1,40 @@
{ lib { lib
, fetchurl , fetchurl
, substituteAll, python3, pkg-config, runCommand, writeText , substituteAll
, xorg, gtk3, glib, pango, cairo, gdk-pixbuf, atk, pandoc , pkg-config
, wrapGAppsHook, xorgserver, getopt, xauth, util-linux, which , runCommand
, ffmpeg, x264, libvpx, libwebp, x265, librsvg , writeText
, wrapGAppsHook
, withNvenc ? false
, atk
, cairo
, cudatoolkit
, ffmpeg
, gdk-pixbuf
, getopt
, glib
, gobject-introspection
, gst_all_1
, gtk3
, libfakeXinerama , libfakeXinerama
, gst_all_1, pulseaudio, gobject-introspection , librsvg
, withNvenc ? false, cudatoolkit, nv-codec-headers-10, nvidia_x11 ? null , libvpx
, pam }: , libwebp
, nv-codec-headers-10
, nvidia_x11 ? null
, pam
, pandoc
, pango
, pulseaudio
, python3
, util-linux
, which
, x264
, x265
, xauth
, xorg
, xorgserver
}:
with lib; with lib;
@ -43,11 +70,11 @@ let
''; '';
in buildPythonApplication rec { in buildPythonApplication rec {
pname = "xpra"; pname = "xpra";
version = "4.3.2"; version = "4.3.3";
src = fetchurl { src = fetchurl {
url = "https://xpra.org/src/${pname}-${version}.tar.xz"; url = "https://xpra.org/src/${pname}-${version}.tar.xz";
hash = "sha256-CIHVpxZ2qC7Ct5Kmc6dxEzxH9s+63/sI07f9SbCh4a4="; hash = "sha256-J6zzkho0A1faCVzS/0wDlbgLtJmyPrnBkEcR7kDld7A=";
}; };
patches = [ patches = [
@ -56,41 +83,81 @@ in buildPythonApplication rec {
inherit libfakeXinerama; inherit libfakeXinerama;
}) })
./fix-41106.patch # https://github.com/NixOS/nixpkgs/issues/41106 ./fix-41106.patch # https://github.com/NixOS/nixpkgs/issues/41106
./fix-122159.patch # https://github.com/NixOS/nixpkgs/issues/122159
]; ];
INCLUDE_DIRS = "${pam}/include"; INCLUDE_DIRS = "${pam}/include";
nativeBuildInputs = [ pkg-config wrapGAppsHook pandoc ] nativeBuildInputs = [
++ lib.optional withNvenc cudatoolkit; pkg-config
wrapGAppsHook
pandoc
] ++ lib.optional withNvenc cudatoolkit;
buildInputs = with xorg; [ buildInputs = with xorg; [
libX11 xorgproto libXrender libXi libXres libX11
libXtst libXfixes libXcomposite libXdamage libXcomposite
libXrandr libxkbfile libXdamage
] ++ [ libXfixes
libXi
libxkbfile
libXrandr
libXrender
libXres
libXtst
xorgproto
] ++ (with gst_all_1; [
gst-libav
gst-plugins-bad
gst-plugins-base
gst-plugins-good
gstreamer
]) ++ [
atk.out
cairo
cython cython
ffmpeg
gdk-pixbuf
glib
gobject-introspection
gtk3
librsvg librsvg
libvpx
pango cairo gdk-pixbuf atk.out gtk3 glib libwebp
ffmpeg libvpx x264 libwebp x265
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gst_all_1.gst-libav
pam pam
gobject-introspection pango
x264
x265
] ++ lib.optional withNvenc nvencHeaders; ] ++ lib.optional withNvenc nvencHeaders;
propagatedBuildInputs = with python3.pkgs; [
pillow rencode pycrypto cryptography pycups lz4 dbus-python propagatedBuildInputs = with python3.pkgs; ([
netifaces numpy pygobject3 pycairo gst-python pam cryptography
pyopengl paramiko opencv4 python-uinput pyxdg dbus-python
ipaddress idna pyinotify gst-python
] ++ lib.optionals withNvenc (with python3.pkgs; [pynvml pycuda]); idna
ipaddress
# error: 'import_cairo' defined but not used lz4
netifaces
numpy
opencv4
pam
paramiko
pillow
pycairo
pycrypto
pycups
pygobject3
pyinotify
pyopengl
python-uinput
pyxdg
rencode
] ++ lib.optionals withNvenc [
pycuda
pynvml
]);
# error: 'import_cairo' defined but not used
NIX_CFLAGS_COMPILE = "-Wno-error=unused-function"; NIX_CFLAGS_COMPILE = "-Wno-error=unused-function";
setupPyBuildFlags = [ setupPyBuildFlags = [
@ -104,12 +171,14 @@ in buildPythonApplication rec {
] ++ lib.optional withNvenc "--with-nvenc"; ] ++ lib.optional withNvenc "--with-nvenc";
dontWrapGApps = true; dontWrapGApps = true;
preFixup = '' preFixup = ''
makeWrapperArgs+=( makeWrapperArgs+=(
"''${gappsWrapperArgs[@]}" "''${gappsWrapperArgs[@]}"
--set XPRA_INSTALL_PREFIX "$out" --set XPRA_INSTALL_PREFIX "$out"
--set XPRA_COMMAND "$out/bin/xpra" --set XPRA_COMMAND "$out/bin/xpra"
--set XPRA_XKB_CONFIG_ROOT "${xorg.xkeyboardconfig}/share/X11/xkb" --set XPRA_XKB_CONFIG_ROOT "${xorg.xkeyboardconfig}/share/X11/xkb"
--set XORG_CONFIG_PREFIX ""
--prefix LD_LIBRARY_PATH : ${libfakeXinerama}/lib --prefix LD_LIBRARY_PATH : ${libfakeXinerama}/lib
--prefix PATH : ${lib.makeBinPath [ getopt xorgserver xauth which util-linux pulseaudio ]} --prefix PATH : ${lib.makeBinPath [ getopt xorgserver xauth which util-linux pulseaudio ]}
'' + lib.optionalString withNvenc '' '' + lib.optionalString withNvenc ''

@ -0,0 +1,16 @@
diff --git a/xpra/scripts/main.py b/xpra/scripts/main.py
index 6def9e0ad..031f8aba9 100755
--- a/xpra/scripts/main.py
+++ b/xpra/scripts/main.py
@@ -364,11 +364,7 @@ def run_mode(script_file, cmdline, error_cb, options, args, mode, defaults):
"shadow",
) and not display_is_remote:
if use_systemd_run(options.systemd_run):
- #make sure we run via the same interpreter,
- #inject it into the command line if we have to:
argv = list(cmdline)
- if argv[0].find("python")<0:
- argv.insert(0, "python%i.%i" % (sys.version_info.major, sys.version_info.minor))
return systemd_run_wrap(mode, argv, options.systemd_run_args)
configure_env(options.env)
configure_logging(options, mode)
Loading…
Cancel
Save