1{ lib 2, buildPythonPackage 3, fetchPypi 4, cffi 5, pytestCheckHook 6, pyserial 7, fetchpatch 8}: 9 10buildPythonPackage rec { 11 pname = "smbus-cffi"; 12 version = "0.5.1"; 13 14 src = fetchPypi { 15 inherit pname version; 16 sha256 = "fb4195aaabfc01586863f60d3190b5cb1bf8f12622fd597e23e48768dad6bde8"; 17 }; 18 19 patches = [ 20 # https://github.com/bivab/smbus-cffi/pull/24 21 (fetchpatch { 22 url = "https://github.com/bivab/smbus-cffi/commit/ba79ae174a9d84e767d95f165c43ee212b1bbb92.patch"; 23 sha256 = "sha256-WtRuK5y6fWDEhm0Xy5XqS5yCkn7vXXYtjlOjS90gla4="; 24 }) 25 ]; 26 27 propagatedNativeBuildInputs = [ cffi ]; 28 29 propagatedBuildInputs = [ cffi ]; 30 31 installCheckPhase = '' 32 # we want to import the installed module that also contains the compiled library 33 rm -rf smbus 34 runHook pytestCheckPhase 35 ''; 36 37 # requires hardware access 38 pytestFlagsArray = [ "--ignore=test/test_smbus_integration.py" ]; 39 40 checkInputs = [ pytestCheckHook pyserial ]; 41 42 meta = with lib; { 43 description = "Python module for SMBus access through Linux I2C /dev interface"; 44 homepage = "https://github.com/bivab/smbus-cffi"; 45 license = licenses.gpl2; 46 maintainers = with maintainers; [ mic92 ]; 47 platforms = platforms.linux; 48 }; 49}