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