2021-01-11 07:54:33 +00:00
|
|
|
{ lib, stdenv, buildPythonPackage, fetchPypi, libusb1, pytest }:
|
2017-12-30 10:47:57 +00:00
|
|
|
|
|
|
|
buildPythonPackage rec {
|
|
|
|
pname = "libusb1";
|
2021-02-23 08:05:38 +00:00
|
|
|
version = "1.9.2";
|
2017-12-30 10:47:57 +00:00
|
|
|
|
|
|
|
src = fetchPypi {
|
|
|
|
inherit pname version;
|
2021-02-23 08:05:38 +00:00
|
|
|
sha256 = "17hqck808m59jv6m2g4hasnay44pycy3y0im01fq9jpr3ymcdbi7";
|
2017-12-30 10:47:57 +00:00
|
|
|
};
|
|
|
|
|
2018-09-09 18:56:34 +00:00
|
|
|
postPatch = ''
|
2017-12-30 10:47:57 +00:00
|
|
|
substituteInPlace usb1/libusb1.py --replace \
|
|
|
|
"ctypes.util.find_library(base_name)" \
|
2017-12-31 10:17:34 +00:00
|
|
|
"'${libusb1}/lib/libusb-1.0${stdenv.hostPlatform.extensions.sharedLibrary}'"
|
2017-12-30 10:47:57 +00:00
|
|
|
'';
|
|
|
|
|
|
|
|
buildInputs = [ libusb1 ];
|
|
|
|
|
2018-09-09 20:09:34 +00:00
|
|
|
checkInputs = [ pytest ];
|
|
|
|
|
2018-07-30 16:28:58 +00:00
|
|
|
checkPhase = ''
|
2018-09-09 20:09:34 +00:00
|
|
|
# USBPollerThread is unreliable. Let's not test it.
|
|
|
|
# See: https://github.com/vpelletier/python-libusb1/issues/16
|
|
|
|
py.test -k 'not testUSBPollerThreadExit' usb1/testUSB1.py
|
2018-07-30 16:28:58 +00:00
|
|
|
'';
|
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "https://github.com/vpelletier/python-libusb1";
|
2017-12-30 10:47:57 +00:00
|
|
|
description = "Python ctype-based wrapper around libusb1";
|
|
|
|
license = licenses.lgpl2Plus;
|
2020-12-14 12:03:36 +00:00
|
|
|
maintainers = with maintainers; [ prusnak rnhmjoj ];
|
2017-12-30 10:47:57 +00:00
|
|
|
};
|
|
|
|
}
|