From 10e5b931ebcc243badc4678c194aaa04be3f7ab1 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 8 Jul 2020 15:19:32 +0200 Subject: [PATCH] python3.pkgs.libevdev: hardcode path --- .../python-modules/libevdev/default.nix | 15 ++++++++++++- .../python-modules/libevdev/fix-paths.patch | 22 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/libevdev/fix-paths.patch diff --git a/pkgs/development/python-modules/libevdev/default.nix b/pkgs/development/python-modules/libevdev/default.nix index 220d60663a3..92875660de8 100644 --- a/pkgs/development/python-modules/libevdev/default.nix +++ b/pkgs/development/python-modules/libevdev/default.nix @@ -1,4 +1,10 @@ -{ stdenv, buildPythonPackage, isPy27, fetchPypi }: +{ stdenv +, buildPythonPackage +, isPy27 +, fetchPypi +, substituteAll +, pkgs +}: buildPythonPackage rec { pname = "libevdev"; @@ -10,6 +16,13 @@ buildPythonPackage rec { sha256 = "17agnigmzscmdjqmrylg1lza03hwjhgxbpf4l705s6i7p7ndaqrs"; }; + patches = [ + (substituteAll { + src = ./fix-paths.patch; + libevdev = stdenv.lib.getLib pkgs.libevdev; + }) + ]; + doCheck = false; meta = with stdenv.lib; { diff --git a/pkgs/development/python-modules/libevdev/fix-paths.patch b/pkgs/development/python-modules/libevdev/fix-paths.patch new file mode 100644 index 00000000000..e73c360b146 --- /dev/null +++ b/pkgs/development/python-modules/libevdev/fix-paths.patch @@ -0,0 +1,22 @@ +diff --git a/libevdev/_clib.py b/libevdev/_clib.py +index 6e4ab2c..9db54d1 100644 +--- a/libevdev/_clib.py ++++ b/libevdev/_clib.py +@@ -120,7 +120,7 @@ class Libevdev(_LibraryWrapper): + + @staticmethod + def _cdll(): +- return ctypes.CDLL("libevdev.so.2", use_errno=True) ++ return ctypes.CDLL("@libevdev@/lib/libevdev.so.2", use_errno=True) + + _api_prototypes = { + # const char *libevdev_event_type_get_name(unsigned int type); +@@ -910,7 +910,7 @@ class UinputDevice(_LibraryWrapper): + + @staticmethod + def _cdll(): +- return ctypes.CDLL("libevdev.so.2", use_errno=True) ++ return ctypes.CDLL("@libevdev@/lib/libevdev.so.2", use_errno=True) + + _api_prototypes = { + # int libevdev_uinput_create_from_device(const struct libevdev *, int, struct libevdev_uinput **)