From e5206efa6e88d32e3819685adee35c49124ccf0e Mon Sep 17 00:00:00 2001
From: V3n3RiX <venerix@koprulu.sector>
Date: Sat, 2 Sep 2023 16:16:36 +0100
Subject: gentoo auto-resync : 02:09:2023 - 16:16:36

---
 x11-wm/Manifest.gz                                 | Bin 9120 -> 9122 bytes
 x11-wm/xpra/Manifest                               |   3 +-
 .../xpra/files/xpra-4.4.6_minimal-features.patch   |  18 ++
 x11-wm/xpra/xpra-4.4.6-r1.ebuild                   | 226 --------------------
 x11-wm/xpra/xpra-4.4.6-r2.ebuild                   | 227 +++++++++++++++++++++
 5 files changed, 247 insertions(+), 227 deletions(-)
 create mode 100644 x11-wm/xpra/files/xpra-4.4.6_minimal-features.patch
 delete mode 100644 x11-wm/xpra/xpra-4.4.6-r1.ebuild
 create mode 100644 x11-wm/xpra/xpra-4.4.6-r2.ebuild

(limited to 'x11-wm')

diff --git a/x11-wm/Manifest.gz b/x11-wm/Manifest.gz
index a1b7bd9e6586..93dab4f5c483 100644
Binary files a/x11-wm/Manifest.gz and b/x11-wm/Manifest.gz differ
diff --git a/x11-wm/xpra/Manifest b/x11-wm/xpra/Manifest
index 26e910dcf7d9..4e4391389e02 100644
--- a/x11-wm/xpra/Manifest
+++ b/x11-wm/xpra/Manifest
@@ -1,8 +1,9 @@
 AUX xpra-4.4-xdummy.patch 614 BLAKE2B 9b502fa836caea212f90730e0238adb16c74814a55a2a5b32e062880d29b1fa05247fc3c5e8edddf0acdd1d93620dafb507ec9a14996c3aea248d204510a0e2c SHA512 71efb726f50b85890bb3508bd3943b3bb9e34a8f5d3c92c6fa4f7c2ea6b8c51551243ea0d4d52802f17e5aaed7716b9ee0b462cde1941dae9273651dcc461a9a
+AUX xpra-4.4.6_minimal-features.patch 766 BLAKE2B a27634a600d6431a2812a61bff854e0d5dd5d296f0011c22e511cb438c899df096e3210972fa19ea3d47b3429873741075fd9a4bb6daeb1dece60527c60d156e SHA512 6d6f2c9718b12176b272582b3ab6b80f9dfe9c52e975925d24e529be1694aafc3bc340bd0afea164d169bb008c527bacffb36ada3ab59ebd8dab7df2763afcde
 AUX xpra-9999-xdummy.patch 489 BLAKE2B 284d109be06fc68dc6567adab1c8e514a69a316e82041175dac530eb190ed2d42b9572ca8cd722dae1295b9c84f35ec750953a80dc0064d835de0d3cc0bf8447 SHA512 98daab5c16755564af06bf139e3b57e2f88dd2ce3503eb75d79f066f8ed3efab4c668e9dc00988267b3ca0f876a607df332a9fcfe7f00c1d54a0d84c01159c17
 DIST xpra-4.4.5.tar.gz 4332287 BLAKE2B 64165a18d0f204247f984f616438252e82922447441376e6e46a15509486e67f699e852562cd632591fd2831a86592d5029c5905932fc9d267b16a7e6edd1b5a SHA512 6fb28328efc020969fff17bf747a1e0bf5b21869c9532a8c482e12f979d1dec7989e10e5bf3a9ae7dbfaa9e48c670255b196fdb819200a74dfbdec3ba5ae744f
 DIST xpra-4.4.6.tar.gz 4334932 BLAKE2B 0518c6807be85777bb67b0a3283a610c06a97813671bff6edc701533aaa8f26b96e423e56ba56491ede120697277f6935ee26976b49550dfd2d52bbcd2daebd8 SHA512 273ee959647c1281f18c7b1b24d3a5179c4b6ce81515cc34618c698e55bdc2a8e94f0e236d7ab41c7bf29fa7fde0b1a2a1432445b8aaaa0a75cd5a90f4858419
 EBUILD xpra-4.4.5-r2.ebuild 5457 BLAKE2B d2896d731465a657e0ff214b8c2f91173398956a430ddd5a5dc80bc00b3767e93adb406441d9320ef6ae5d39ca6ae363deac3660e4ebf5ba90b91e50e3ecbf61 SHA512 80e0960496bed8217eedae760d8aa561be4e650b67eee4672d4c3cf9558c52716ff7f280837e15fca59048573b8c6b3a845d46b48ec8689344002900826174a3
-EBUILD xpra-4.4.6-r1.ebuild 5628 BLAKE2B c7e705cb83feabc39be9a0b9d6fe4aec00a743a2a8a843e60deba07d0c83aee396f2e09a1a8574cd5a8dc8f0fba3ab436bd4c1db546908fe4d36ae63b7f6414c SHA512 e99f2f29d9ddb047e13e6daa1a76c1bff3ab61ab71d53da00019bfbb469678fbbe5372b46f8cc09931786df9e4f019af167c156a4674fed856c0f86aba2b0d07
+EBUILD xpra-4.4.6-r2.ebuild 5703 BLAKE2B 70d5bed95427984a8158d1e52973b80d75a1effeff44cfc1c039b7198b8634f7eb4f3d7e22e3fea037e5d2ce5c67aa9b5220ae01953555bec71eb41f131f60cb SHA512 68e47c1b6b2e7f4f0413f654e37ad2bd5a31c5eaa313bb2085739a7bd15476801837ae6f47e3d07230a9bb6f097de00a8c1cc9eb91f229d1241bde6d4dac4d89
 EBUILD xpra-9999.ebuild 5635 BLAKE2B 2f8307ace03da68e6a558585a4fedca002fe9eb793add7bd21ff2d4795ce9d89fe00bd15d9659187f08be245557896f636329243bcc653247f760d0f297787f1 SHA512 6a29e51d893696edd3852e5d5438d070fa3783430346119958aa71df5a6a69839e31689dd41442f4423cbbdce26849b0d44e61b43862b80bc380e73c8c85f9e6
 MISC metadata.xml 1418 BLAKE2B 6a0600566dd94b9e7cb6248692cd35e22c65083662f7ad701c556a8ceaeeeda6540d15f3325f5425d9ea210da60085641b1209d7fd0f419b6d4a9a7b1263209d SHA512 6c96bbbd3ef19f487a685f8d31fe90cca02fa29806db676dae77c7586fd580be49723c96bb0ae8e17ad6719d0faea31283020861eb96a6e464ecfcb028c7a92b
diff --git a/x11-wm/xpra/files/xpra-4.4.6_minimal-features.patch b/x11-wm/xpra/files/xpra-4.4.6_minimal-features.patch
new file mode 100644
index 000000000000..78a4cccb3684
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-4.4.6_minimal-features.patch
@@ -0,0 +1,18 @@
+Xpra is a good piece of software except that some features are not
+useful only to introduce unnecessary dependencies.
+
+Forwarded: no need.
+
+Index: xpra-4.4.6/xpra/scripts/main.py
+===================================================================
+--- xpra-4.4.6.orig/xpra/scripts/main.py
++++ xpra-4.4.6/xpra/scripts/main.py
+@@ -64,7 +64,7 @@ CLIPBOARD_CLASS = os.environ.get("XPRA_C
+ WAIT_SERVER_TIMEOUT = envint("WAIT_SERVER_TIMEOUT", 90)
+ CONNECT_TIMEOUT = envint("XPRA_CONNECT_TIMEOUT", 20)
+ OPENGL_PROBE_TIMEOUT = envint("XPRA_OPENGL_PROBE_TIMEOUT", 5)
+-SYSTEMD_RUN = envbool("XPRA_SYSTEMD_RUN", True)
++SYSTEMD_RUN = False
+ VERIFY_X11_SOCKET_TIMEOUT = envint("XPRA_VERIFY_X11_SOCKET_TIMEOUT", 1)
+ LIST_REPROBE_TIMEOUT = envint("XPRA_LIST_REPROBE_TIMEOUT", 10)
+ 
diff --git a/x11-wm/xpra/xpra-4.4.6-r1.ebuild b/x11-wm/xpra/xpra-4.4.6-r1.ebuild
deleted file mode 100644
index b9dcf632b0fc..000000000000
--- a/x11-wm/xpra/xpra-4.4.6-r1.ebuild
+++ /dev/null
@@ -1,226 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="https://github.com/Xpra-org/xpra.git"
-	inherit git-r3
-else
-	inherit pypi
-	KEYWORDS="~amd64 ~x86"
-fi
-
-PYTHON_COMPAT=( python3_{9..11} )
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_SINGLE_IMPL=yes
-DISTUTILS_EXT=1
-
-inherit xdg xdg-utils distutils-r1 multibuild prefix tmpfiles udev
-
-DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
-HOMEPAGE="https://xpra.org/"
-LICENSE="GPL-2 BSD"
-SLOT="0"
-IUSE="brotli +client +clipboard crypt csc cups dbus doc ffmpeg jpeg html ibus +lz4 lzo minimal oauth opengl pinentry pulseaudio +server sound systemd test +trayicon udev vpx webcam webp xdg xinerama"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
-	|| ( client server )
-	cups? ( dbus )
-	oauth? ( server )
-	opengl? ( client )
-	test? ( client clipboard crypt dbus html server sound xdg xinerama )
-"
-
-TEST_DEPEND="
-	$(python_gen_cond_dep '
-		dev-python/netifaces[${PYTHON_USEDEP}]
-		dev-python/pillow[jpeg?,webp?,${PYTHON_USEDEP}]
-		dev-python/rencode[${PYTHON_USEDEP}]
-		dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
-		xdg? ( dev-python/pyxdg[${PYTHON_USEDEP}] )
-	')
-	html? ( www-apps/xpra-html5 )
-	server? (
-		x11-base/xorg-server[-minimal,xvfb]
-		x11-drivers/xf86-input-void
-	)
-	xinerama? ( x11-libs/libfakeXinerama )
-"
-DEPEND="
-	${PYTHON_DEPS}
-	$(python_gen_cond_dep '
-		dev-python/pygobject:3[${PYTHON_USEDEP},cairo]
-		opengl? ( dev-python/pyopengl[${PYTHON_USEDEP}] )
-		sound? ( dev-python/gst-python:1.0[${PYTHON_USEDEP}] )
-	')
-	x11-libs/gtk+:3[introspection]
-	x11-libs/libX11
-	x11-libs/libXcomposite
-	x11-libs/libXdamage
-	x11-libs/libXfixes
-	x11-libs/libXrandr
-	x11-libs/libXres
-	x11-libs/libXtst
-	x11-libs/libxkbfile
-	brotli? ( app-arch/brotli )
-	csc? ( >=media-video/ffmpeg-1.2.2:0= )
-	ffmpeg? ( >=media-video/ffmpeg-3.2.2:0=[x264] )
-	jpeg? ( media-libs/libjpeg-turbo )
-	pulseaudio? (
-		media-libs/libpulse
-		media-plugins/gst-plugins-pulse:1.0
-	)
-	sound? (
-		media-libs/gstreamer:1.0
-		media-libs/gst-plugins-base:1.0
-	)
-	vpx? ( media-libs/libvpx media-video/ffmpeg )
-	webp? ( media-libs/libwebp )
-"
-RDEPEND="
-	${DEPEND}
-	${TEST_DEPEND}
-	$(python_gen_cond_dep '
-		crypt? ( dev-python/cryptography[${PYTHON_USEDEP}] )
-		cups? ( dev-python/pycups[${PYTHON_USEDEP}] )
-		lz4? ( dev-python/lz4[${PYTHON_USEDEP}] )
-		lzo? ( >=dev-python/python-lzo-0.7.0[${PYTHON_USEDEP}] )
-		oauth? ( dev-python/oauthlib[${PYTHON_USEDEP}] )
-		opengl? ( dev-python/pyopengl_accelerate[${PYTHON_USEDEP}] )
-		webcam? (
-			dev-python/numpy[${PYTHON_USEDEP}]
-			dev-python/pyinotify[${PYTHON_USEDEP}]
-			media-libs/opencv[${PYTHON_USEDEP},python]
-		)
-	')
-	acct-group/xpra
-	virtual/ssh
-	x11-apps/xauth
-	x11-apps/xmodmap
-	ibus? ( app-i18n/ibus )
-	pinentry? ( app-crypt/pinentry )
-	trayicon? ( dev-libs/libayatana-appindicator )
-	udev? ( virtual/udev )
-"
-DEPEND+="
-	test? ( ${TEST_DEPEND} )
-"
-BDEPEND="
-	$(python_gen_cond_dep '
-		>=dev-python/cython-0.16[${PYTHON_USEDEP}]
-	')
-	virtual/pkgconfig
-	doc? ( virtual/pandoc )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-4.4-xdummy.patch
-)
-
-python_prepare_all() {
-	distutils-r1_python_prepare_all
-
-	hprefixify xpra/scripts/config.py
-
-	sed -r -e "/\bdoc_dir =/s:/${PN}/\":/${PF}/html\":" \
-		-i setup.py || die
-
-	if use minimal; then
-		sed -r -e '/pam_ENABLED/s/DEFAULT/False/' \
-			-e 's/^(xdg_open)_ENABLED = .*/\1_ENABLED = False/' \
-			-i setup.py || die
-	fi
-}
-
-python_configure_all() {
-	sed -e "/'pulseaudio'/s:DEFAULT_PULSEAUDIO:$(usex pulseaudio True False):" \
-		-i setup.py || die
-
-	DISTUTILS_ARGS=(
-		--without-PIC
-		--without-Xdummy
-		$(use_with client)
-		$(use_with clipboard)
-		$(use_with csc csc_swscale)
-		--without-csc_libyuv
-		--without-cuda_rebuild
-		--without-cuda_kernels
-		$(use_with cups printing)
-		--without-debug
-		$(use_with dbus)
-		$(use_with doc docs)
-		$(use_with ffmpeg dec_avcodec2)
-		$(use_with ffmpeg enc_ffmpeg)
-		$(use_with ffmpeg enc_x264)
-		--without-enc_x265
-		--with-gtk3
-		$(use_with jpeg jpeg_encoder)
-		$(use_with jpeg jpeg_decoder)
-		--without-mdns
-		--without-sd_listen
-		--without-service
-		$(use_with opengl)
-		$(use_with server shadow)
-		$(use_with server)
-		$(use_with sound)
-		--without-strict
-		$(use_with vpx)
-		--with-warn
-		$(use_with webcam)
-		$(use_with webp)
-		--with-x11
-	)
-
-	export XPRA_SOCKET_DIRS="${EPREFIX}/run/xpra"
-}
-
-python_test() {
-	export XAUTHORITY=${HOME}/.Xauthority
-	touch "${XAUTHORITY}" || die
-
-	distutils_install_for_testing
-	xdg_environment_reset
-
-	env -u WAYLAND_DISPLAY -u XDG_SESSION_TYPE \
-	PYTHONPATH="${S}/tests/unittests:${BUILD_DIR}/test/lib" \
-	XPRA_SYSTEMD_RUN=$(usex systemd) XPRA_TEST_COVERAGE=0 \
-		"${PYTHON}" "${S}"/tests/unittests/unit/run.py || die
-}
-
-python_install_all() {
-	distutils-r1_python_prepare_all
-
-	# Switching to PEP517 gives /usr/etc. Previously, setup.py hardcodes
-	# if root_prefix.endswith("/usr"):
-	#     root_prefix = root_prefix[:-4]
-	# But now setuptools uses data/* to represent out-of-sitedir files.
-	# The upstream hack no longer works. We are on our own.
-
-	mv -v "${ED}"/usr/etc "${ED}"/ || die
-
-	# Move udev dir to the right place if necessary.
-	if use udev; then
-		local dir=$(get_udevdir)
-		if [[ ! ${ED}/usr/lib/udev -ef ${ED}${dir} ]]; then
-			dodir "${dir%/*}"
-			mv -vnT "${ED}"/usr/lib/udev "${ED}${dir}" || die
-		fi
-	else
-		rm -vr "${ED}"/usr/lib/udev || die
-		rm -v "${ED}"/usr/libexec/xpra/xpra_udev_product_version || die
-	fi
-}
-
-pkg_postinst() {
-	tmpfiles_process xpra.conf
-	xdg_pkg_postinst
-	use udev && udev_reload
-}
-
-pkg_postrm() {
-	xdg_pkg_postinst
-	use udev && udev_reload
-}
diff --git a/x11-wm/xpra/xpra-4.4.6-r2.ebuild b/x11-wm/xpra/xpra-4.4.6-r2.ebuild
new file mode 100644
index 000000000000..5ec14d265625
--- /dev/null
+++ b/x11-wm/xpra/xpra-4.4.6-r2.ebuild
@@ -0,0 +1,227 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} = 9999* ]]; then
+	EGIT_REPO_URI="https://github.com/Xpra-org/xpra.git"
+	inherit git-r3
+else
+	inherit pypi
+	KEYWORDS="~amd64 ~x86"
+fi
+
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_SINGLE_IMPL=yes
+DISTUTILS_EXT=1
+
+inherit xdg xdg-utils distutils-r1 multibuild prefix tmpfiles udev
+
+DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
+HOMEPAGE="https://xpra.org/"
+LICENSE="GPL-2 BSD"
+SLOT="0"
+IUSE="brotli +client +clipboard crypt csc cups dbus doc ffmpeg jpeg html ibus +lz4 lzo minimal oauth opengl pinentry pulseaudio +server sound systemd test +trayicon udev vpx webcam webp xdg xinerama"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	|| ( client server )
+	cups? ( dbus )
+	oauth? ( server )
+	opengl? ( client )
+	test? ( client clipboard crypt dbus html server sound xdg xinerama )
+"
+
+TEST_DEPEND="
+	$(python_gen_cond_dep '
+		dev-python/netifaces[${PYTHON_USEDEP}]
+		dev-python/pillow[jpeg?,webp?,${PYTHON_USEDEP}]
+		dev-python/rencode[${PYTHON_USEDEP}]
+		dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+		xdg? ( dev-python/pyxdg[${PYTHON_USEDEP}] )
+	')
+	html? ( www-apps/xpra-html5 )
+	server? (
+		x11-base/xorg-server[-minimal,xvfb]
+		x11-drivers/xf86-input-void
+	)
+	xinerama? ( x11-libs/libfakeXinerama )
+"
+DEPEND="
+	${PYTHON_DEPS}
+	$(python_gen_cond_dep '
+		dev-python/pygobject:3[${PYTHON_USEDEP},cairo]
+		opengl? ( dev-python/pyopengl[${PYTHON_USEDEP}] )
+		sound? ( dev-python/gst-python:1.0[${PYTHON_USEDEP}] )
+	')
+	x11-libs/gtk+:3[introspection]
+	x11-libs/libX11
+	x11-libs/libXcomposite
+	x11-libs/libXdamage
+	x11-libs/libXfixes
+	x11-libs/libXrandr
+	x11-libs/libXres
+	x11-libs/libXtst
+	x11-libs/libxkbfile
+	brotli? ( app-arch/brotli )
+	csc? ( >=media-video/ffmpeg-1.2.2:0= )
+	ffmpeg? ( >=media-video/ffmpeg-3.2.2:0=[x264] )
+	jpeg? ( media-libs/libjpeg-turbo )
+	pulseaudio? (
+		media-libs/libpulse
+		media-plugins/gst-plugins-pulse:1.0
+	)
+	sound? (
+		media-libs/gstreamer:1.0
+		media-libs/gst-plugins-base:1.0
+	)
+	vpx? ( media-libs/libvpx media-video/ffmpeg )
+	webp? ( media-libs/libwebp )
+"
+RDEPEND="
+	${DEPEND}
+	${TEST_DEPEND}
+	$(python_gen_cond_dep '
+		crypt? ( dev-python/cryptography[${PYTHON_USEDEP}] )
+		cups? ( dev-python/pycups[${PYTHON_USEDEP}] )
+		lz4? ( dev-python/lz4[${PYTHON_USEDEP}] )
+		lzo? ( >=dev-python/python-lzo-0.7.0[${PYTHON_USEDEP}] )
+		oauth? ( dev-python/oauthlib[${PYTHON_USEDEP}] )
+		opengl? ( dev-python/pyopengl_accelerate[${PYTHON_USEDEP}] )
+		webcam? (
+			dev-python/numpy[${PYTHON_USEDEP}]
+			dev-python/pyinotify[${PYTHON_USEDEP}]
+			media-libs/opencv[${PYTHON_USEDEP},python]
+		)
+	')
+	acct-group/xpra
+	virtual/ssh
+	x11-apps/xauth
+	x11-apps/xmodmap
+	ibus? ( app-i18n/ibus )
+	pinentry? ( app-crypt/pinentry )
+	trayicon? ( dev-libs/libayatana-appindicator )
+	udev? ( virtual/udev )
+"
+DEPEND+="
+	test? ( ${TEST_DEPEND} )
+"
+BDEPEND="
+	$(python_gen_cond_dep '
+		>=dev-python/cython-0.16[${PYTHON_USEDEP}]
+	')
+	virtual/pkgconfig
+	doc? ( virtual/pandoc )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-4.4-xdummy.patch
+)
+
+python_prepare_all() {
+	if use minimal; then
+		sed -r -e '/pam_ENABLED/s/DEFAULT/False/' \
+			-e 's/^(xdg_open)_ENABLED = .*/\1_ENABLED = False/' \
+			-i setup.py || die
+		PATCHES+=( "${FILESDIR}"/${PN}-4.4.6_xpra-4.4.6_minimal-features.patch )
+	fi
+
+	distutils-r1_python_prepare_all
+
+	hprefixify xpra/scripts/config.py
+
+	sed -r -e "/\bdoc_dir =/s:/${PN}/\":/${PF}/html\":" \
+		-i setup.py || die
+}
+
+python_configure_all() {
+	sed -e "/'pulseaudio'/s:DEFAULT_PULSEAUDIO:$(usex pulseaudio True False):" \
+		-i setup.py || die
+
+	DISTUTILS_ARGS=(
+		--without-PIC
+		--without-Xdummy
+		$(use_with client)
+		$(use_with clipboard)
+		$(use_with csc csc_swscale)
+		--without-csc_libyuv
+		--without-cuda_rebuild
+		--without-cuda_kernels
+		$(use_with cups printing)
+		--without-debug
+		$(use_with dbus)
+		$(use_with doc docs)
+		$(use_with ffmpeg dec_avcodec2)
+		$(use_with ffmpeg enc_ffmpeg)
+		$(use_with ffmpeg enc_x264)
+		--without-enc_x265
+		--with-gtk3
+		$(use_with jpeg jpeg_encoder)
+		$(use_with jpeg jpeg_decoder)
+		--without-mdns
+		--without-sd_listen
+		--without-service
+		$(use_with opengl)
+		$(use_with server shadow)
+		$(use_with server)
+		$(use_with sound)
+		--without-strict
+		$(use_with vpx)
+		--with-warn
+		$(use_with webcam)
+		$(use_with webp)
+		--with-x11
+	)
+
+	export XPRA_SOCKET_DIRS="${EPREFIX}/run/xpra"
+}
+
+python_test() {
+	export XAUTHORITY=${HOME}/.Xauthority
+	touch "${XAUTHORITY}" || die
+
+	distutils_install_for_testing
+	xdg_environment_reset
+
+	env -u WAYLAND_DISPLAY -u XDG_SESSION_TYPE \
+	PYTHONPATH="${S}/tests/unittests:${BUILD_DIR}/test/lib" \
+	XPRA_SYSTEMD_RUN=$(usex systemd) XPRA_TEST_COVERAGE=0 \
+		"${PYTHON}" "${S}"/tests/unittests/unit/run.py || die
+}
+
+python_install_all() {
+	distutils-r1_python_prepare_all
+
+	# Switching to PEP517 gives /usr/etc. Previously, setup.py hardcodes
+	# if root_prefix.endswith("/usr"):
+	#     root_prefix = root_prefix[:-4]
+	# But now setuptools uses data/* to represent out-of-sitedir files.
+	# The upstream hack no longer works. We are on our own.
+
+	mv -v "${ED}"/usr/etc "${ED}"/ || die
+
+	# Move udev dir to the right place if necessary.
+	if use udev; then
+		local dir=$(get_udevdir)
+		if [[ ! ${ED}/usr/lib/udev -ef ${ED}${dir} ]]; then
+			dodir "${dir%/*}"
+			mv -vnT "${ED}"/usr/lib/udev "${ED}${dir}" || die
+		fi
+	else
+		rm -vr "${ED}"/usr/lib/udev || die
+		rm -v "${ED}"/usr/libexec/xpra/xpra_udev_product_version || die
+	fi
+}
+
+pkg_postinst() {
+	tmpfiles_process xpra.conf
+	xdg_pkg_postinst
+	use udev && udev_reload
+}
+
+pkg_postrm() {
+	xdg_pkg_postinst
+	use udev && udev_reload
+}
-- 
cgit v1.2.3