summaryrefslogtreecommitdiff
path: root/x11-misc/libinput-gestures
diff options
context:
space:
mode:
Diffstat (limited to 'x11-misc/libinput-gestures')
-rw-r--r--x11-misc/libinput-gestures/Manifest5
-rw-r--r--x11-misc/libinput-gestures/files/libinput-gestures-2.76-zombie.patch22
-rw-r--r--x11-misc/libinput-gestures/libinput-gestures-2.76.ebuild59
-rw-r--r--x11-misc/libinput-gestures/metadata.xml3
4 files changed, 88 insertions, 1 deletions
diff --git a/x11-misc/libinput-gestures/Manifest b/x11-misc/libinput-gestures/Manifest
index 0f971b60ae0b..486bab2c668c 100644
--- a/x11-misc/libinput-gestures/Manifest
+++ b/x11-misc/libinput-gestures/Manifest
@@ -1,4 +1,7 @@
AUX libinput-gestures-2.73-python-39-tests.patch 369 BLAKE2B c3157b64059679bf1e6f8e7ff24aef39032272f42d8f45d521c60c112afa33ed600fd05ee9dc6c06c7cc1c0c038ebd2991973df67c06bd7a88ea1cc7d269777c SHA512 ef0b9a72bcc298ca3a15d122a29ea8229efe338741a41d5bbd1d84680b893edf60a5605b9e777952be29198ce44629619cdbc9cf37fc8a41f9763a098f6679c9
+AUX libinput-gestures-2.76-zombie.patch 712 BLAKE2B cc9b8744d651ad4afde2ceed770316eadb68ead8433b1b7779adefbad860c8a244d8c455f4442eab68ea6ae7217c8e2f3e666d56476553e9636de6adf8f5e056 SHA512 c573a53d9f0f83c2d87ad6050bfe89c64ff64e6d35a4516bd5cc61d1f89a05f0de7fd94ef2c949c77049ef2d81a472cee31eb50c52556e721851d09a8503da29
DIST libinput-gestures-2.73.tar.gz 28771 BLAKE2B 9f3c546b637b0038431517e2df5e3dfba4fbb7db708f108dd7a979e6674b2bdd44b2b877b5e200c05373a57bfeffefadfde59bc6c403f7188e349c2e051d8683 SHA512 8e46931c76541eb836b1bd79295f05fdc0e22091d1693eac1cc9c16407830806f9e56819e5fb8ba3eed7a26664946010d24d62d99131bcf71b1d8a3682f34ec6
+DIST libinput-gestures-2.76.tar.gz 28913 BLAKE2B d1c610af1eaf48170c08bea1eb92ce3cc36efc8f8035ea5f00cdf151bfe5c8d14368e4a37f8eb9cca7e59742136ba65909c9a468ba254a78d35dcaba7500ce62 SHA512 001c6c64e9ca52b4a7453837448803c797cc746fac04ad15613aa20a6bb33c44b441c343dfa56f23fa195fc7216a6d6c00a88f13e39481a12654a3a1a6dbdd98
EBUILD libinput-gestures-2.73.ebuild 1478 BLAKE2B f2fbfb5dbed155de1061061e04f4af8eaad92988bfbad8cba457058c0ac4c8780a19c9f547a2b4c72dbb3760203ab2f7c728f5c6e964566356e12763b1b03f24 SHA512 a682d442e50ea1c177cdc1e298fed2f8afb74b1b0be677cd10c29c2ca8b31f314786e24093b6a771088edcaf200d83fbb3d8a24533beb127a9a40963277beaf8
-MISC metadata.xml 856 BLAKE2B 92642eca2e06d1564b21c0ceebf435180829cdbc23937c815e55cb5cc71ca8514c5862704f04744a865dba3741102fa58b855487c441fb1e73b2d82ef023c197 SHA512 0038eb454c3f8f263acb75ea2b2840abc0cbb7174496b0832acbdc210b3182c14e0088b6eb3f5591e95b32ab837c6c98111c21494bb6d074418a9d493afc5875
+EBUILD libinput-gestures-2.76.ebuild 1359 BLAKE2B 4233b25eb5a6b5cf9912a7eb25873cd969933f44ddbf51ece040c23bc80d3832714ffc2eb698c1866c4e5d96a255257ac707d2eec1e95e5bea31d7bd856d051a SHA512 2bb6b338e48e86c93d0306678b30da907a64993748aea4b71171a20a2f42ac9f8d809df44380a43fa6e81e93341793ce3e00135e41582715ffd98a654b53276c
+MISC metadata.xml 939 BLAKE2B e6b0177969e57bb6ffdb25d143c3dab5d70a3071fca524abc4d573f223229b06d6f65189cf5bf06921b62a934bb9dea23d80799548930c7c445ed4fc1d70032b SHA512 93c4abc3fa6caecd36ab533d7dd1489070409646375c63fb4dfc361d419e321eeade7959d6c609b611983178e0967a5fb648edfc216bad36e9dea788e7d5e01a
diff --git a/x11-misc/libinput-gestures/files/libinput-gestures-2.76-zombie.patch b/x11-misc/libinput-gestures/files/libinput-gestures-2.76-zombie.patch
new file mode 100644
index 000000000000..231b78dd092f
--- /dev/null
+++ b/x11-misc/libinput-gestures/files/libinput-gestures-2.76-zombie.patch
@@ -0,0 +1,22 @@
+# https://github.com/bulletmark/libinput-gestures/pull/242
+# https://github.com/bulletmark/libinput-gestures/issues/334
+--- ../libinput-gestures 2024-05-05 22:27:48.297359689 +0300
++++ ../libinput-gestures 2024-05-05 22:29:17.473224613 +0300
+@@ -10,6 +10,7 @@
+ import platform
+ import re
+ import shlex
++import signal
+ import subprocess
+ import sys
+ import threading
+@@ -781,6 +782,9 @@
+ cmd = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE,
+ bufsize=1, universal_newlines=True)
+
++ # Avoid producing zombie processes
++ signal.signal(signal.SIGCHLD, signal.SIG_IGN)
++
+ # Store PIDs for potential kill
+ pidfile.write(f'{os.getpid()}\n{cmd.pid}\n')
+ pidfile.flush()
diff --git a/x11-misc/libinput-gestures/libinput-gestures-2.76.ebuild b/x11-misc/libinput-gestures/libinput-gestures-2.76.ebuild
new file mode 100644
index 000000000000..f6e072b536d2
--- /dev/null
+++ b/x11-misc/libinput-gestures/libinput-gestures-2.76.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit python-single-r1 xdg
+
+DESCRIPTION="Actions gestures on your touchpad using libinput"
+HOMEPAGE="https://github.com/bulletmark/libinput-gestures"
+SRC_URI="https://github.com/bulletmark/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="experimental"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="test"
+
+RDEPEND="${PYTHON_DEPS}
+ dev-libs/libinput
+ x11-misc/wmctrl
+ x11-misc/xdotool"
+DEPEND="dev-libs/libinput
+ dev-util/desktop-file-utils"
+
+src_prepare() {
+ default
+
+ use experimental && eapply "${FILESDIR}/${P}"-zombie.patch
+
+ # Fix docdir installation path
+ sed -i "/^DOCDIR/s@\$NAME@${PF}@" libinput-gestures-setup \
+ || die "sed failed for libinput-gestures-setup"
+}
+
+src_test() {
+ emake test
+}
+
+src_install() {
+ default
+ # Actually respect the python target setting
+ python_doscript "${PN}"
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+
+ elog "You must be in the input group to read the touchpad device."
+
+ if ! has_version x11-libs/gtk+:3 ; then
+ elog "${PN}-setup script supports GNOME via x11-libs/gtk+:3."
+ fi
+ if ! has_version kde-plasma/kde-cli-tools:5 ; then
+ elog "${PN}-setup script supports Plasma 5 via kde-plasma/kde-cli-tools:5."
+ fi
+}
diff --git a/x11-misc/libinput-gestures/metadata.xml b/x11-misc/libinput-gestures/metadata.xml
index bb7f9a08a603..a9fcc6c99925 100644
--- a/x11-misc/libinput-gestures/metadata.xml
+++ b/x11-misc/libinput-gestures/metadata.xml
@@ -16,6 +16,9 @@
typically an xdotool command to action desktop/window/application
keyboard combinations and commands.
</longdescription>
+ <use>
+ <flag name="experimental">avoid producing zombie processes</flag>
+ </use>
<upstream>
<remote-id type="github">bulletmark/libinput-gestures</remote-id>
</upstream>