guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

14/181: gnu: Add python-libevdev.


From: guix-commits
Subject: 14/181: gnu: Add python-libevdev.
Date: Tue, 13 Sep 2022 02:25:05 -0400 (EDT)

apteryx pushed a commit to branch master
in repository guix.

commit a412817d84b78461a23855bb65d5b73bc712c3f5
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Mon Aug 29 13:58:16 2022 -0400

    gnu: Add python-libevdev.
    
    * gnu/packages/freedesktop.scm (python-libevdev): New variable.
---
 gnu/packages/freedesktop.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index e2a176c2c2..c62efbff00 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -939,6 +939,48 @@ backends, PackageKit can perform these tasks using the 
appropriate package
 manager for the current system.")
     (license license:gpl2+)))
 
+(define-public python-libevdev
+  (package
+    (name "python-libevdev")
+    (version "0.11")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "libevdev" version))
+              (sha256
+               (base32
+                "03snix86j0angq0lydp29f8833clxq8h0x4spmh8lj7j9mm01jp9"))))
+    (build-system python-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-dlopen-calls
+            (lambda* (#:key inputs #:allow-other-keys)
+              (substitute* "libevdev/_clib.py"
+                (("libevdev.so.2")
+                 (search-input-file inputs "lib/libevdev.so.2")))))
+          (replace 'check
+            (lambda* (#:key tests? #:allow-other-keys)
+              (when tests?
+                (invoke "pytest" "-vv" "test")))))))
+    (native-inputs (list python-pytest))
+    (inputs (list libevdev))
+    (home-page "https://gitlab.freedesktop.org/libevdev/python-libevdev";)
+    (synopsis "Python wrapper for libevdev")
+    (description "This package provides a Python wrapper around
+@code{libevdev}, taking advantage of @code{libevdev}'s advanced event
+handling.  Documentation is available at
+@url{https://python-libevdev.readthedocs.io/en/latest/}.
+@code{libevdev} makes it easy to:
+@itemize
+@item read and parse events from an input device;
+@item create a virtual input device and make it send events;
+@item duplicate an existing device and modify the event stream.
+@end itemize
+For information about libevdev, see:
+@url{https://freedesktop.org/wiki/Software/libevdev/}.";)
+    (license license:expat)))
+
 (define-public python-pyxdg
   (package
     (name "python-pyxdg")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]