about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/trezor/default.nix
blob: 589878d69f526cc5b9b223276cf1c095e81fd788 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{ lib, fetchPypi, buildPythonPackage, isPy3k, python, pytest
, typing-extensions
, protobuf
, hidapi
, ecdsa
, mnemonic
, requests
, pyblake2
, click
, construct
, libusb1
, rlp
}:

buildPythonPackage rec {
  pname = "trezor";
  version = "0.11.3";

  disabled = !isPy3k;

  src = fetchPypi {
    inherit pname version;
    sha256 = "c79a500e90d003073c8060d319dceb042caaba9472f13990c77ed37d04a82108";
  };

  propagatedBuildInputs = [ typing-extensions protobuf hidapi ecdsa mnemonic requests pyblake2 click construct libusb1 rlp ];

  # build requires UTF-8 locale
  LANG = "en_US.UTF-8";

  checkInputs = [
    pytest
  ];

  # disable test_tx_api.py as it requires being online
  checkPhase = ''
    runHook preCheck
    ${python.interpreter} -m pytest --pyarg trezorlib.tests.unit_tests --ignore trezorlib/tests/unit_tests/test_tx_api.py
    runHook postCheck
  '';

  meta = {
    description = "Python library for communicating with TREZOR Bitcoin Hardware Wallet";
    homepage = https://github.com/trezor/python-trezor;
    license = lib.licenses.gpl3;
    maintainers = with lib.maintainers; [ np prusnak mmahut ];
  };
}