1{ buildPythonPackage 2, click 3, ecdsa 4, fetchpatch 5, fetchPypi 6, fido2 7, intelhex 8, lib 9, pyserial 10, pyusb 11, requests 12}: 13 14buildPythonPackage rec { 15 pname = "onlykey-solo-python"; 16 version = "0.0.32"; 17 format = "setuptools"; 18 19 src = fetchPypi { 20 inherit pname version; 21 sha256 = "sha256-88DuhgX4FCwzIKzw4RqWgMtjRdf5huVlKEHAAEminuQ="; 22 }; 23 24 postPatch = '' 25 substituteInPlace setup.py \ 26 --replace "fido2 == 0.9.3" "fido2" 27 ''; 28 29 patches = [ 30 # https://github.com/trustcrypto/onlykey-solo-python/pull/2 31 (fetchpatch { 32 url = "https://github.com/trustcrypto/onlykey-solo-python/commit/c5a86506f940d4e8fbb670ed665ddca48779cbe9.patch"; 33 hash = "sha256-LhCUR5QH9Je/Nr185HgQxfkCtat8W2Huv62zr5Mlrn4="; 34 }) 35 ]; 36 37 propagatedBuildInputs = [ click ecdsa fido2 intelhex pyserial pyusb requests ]; 38 39 # no tests 40 doCheck = false; 41 pythonImportsCheck = [ "solo" ]; 42 43 meta = with lib; { 44 homepage = "https://github.com/trustcrypto/onlykey-solo-python"; 45 description = "Python library for OnlyKey with Solo FIDO2"; 46 maintainers = with maintainers; [ kalbasit ]; 47 license = licenses.asl20; 48 }; 49} 50