1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 fetchpatch, 6 buildPythonPackage, 7 cryptography, 8 click, 9 construct, 10 ecdsa, 11 flit-core, 12 hidapi, 13 intelhex, 14 pillow, 15 protobuf3, 16 requests, 17 setuptools, 18 tabulate, 19 toml, 20 AppKit, 21}: 22 23buildPythonPackage rec { 24 pname = "ledgerwallet"; 25 version = "0.2.4"; 26 format = "pyproject"; 27 28 src = fetchFromGitHub { 29 owner = "LedgerHQ"; 30 repo = "ledgerctl"; 31 rev = "v${version}"; 32 hash = "sha256-IcStYYkKEdZxwgJKL8l2Y1BtO/Oncd4aKUAZD8umbHs="; 33 }; 34 35 buildInputs = [ 36 flit-core 37 setuptools 38 ] ++ lib.optionals stdenv.isDarwin [ AppKit ]; 39 propagatedBuildInputs = [ 40 cryptography 41 click 42 construct 43 ecdsa 44 hidapi 45 intelhex 46 pillow 47 protobuf3 48 requests 49 tabulate 50 toml 51 ]; 52 53 pythonImportsCheck = [ "ledgerwallet" ]; 54 55 meta = with lib; { 56 homepage = "https://github.com/LedgerHQ/ledgerctl"; 57 description = "A library to control Ledger devices"; 58 mainProgram = "ledgerctl"; 59 license = licenses.mit; 60 maintainers = with maintainers; [ 61 d-xo 62 erdnaxe 63 ]; 64 }; 65}