1{ stdenv
2, buildPythonPackage
3, fetchPypi
4, pytest
5, libsodium
6, cffi
7, six
8, hypothesis_4
9}:
10
11buildPythonPackage rec {
12 pname = "pynacl";
13 version = "1.3.0";
14
15 src = fetchPypi {
16 inherit version;
17 pname = "PyNaCl";
18 sha256 = "0c6100edd16fefd1557da078c7a31e7b7d7a52ce39fdca2bec29d4f7b6e7600c";
19 };
20
21 checkInputs = [ pytest hypothesis_4 ];
22 buildInputs = [ libsodium ];
23 propagatedBuildInputs = [ cffi six ];
24
25 SODIUM_INSTALL = "system";
26
27 # fixed in next release 1.3.0+
28 # https://github.com/pyca/pynacl/pull/480
29 postPatch = ''
30 substituteInPlace tests/test_bindings.py \
31 --replace "average_size=128," ""
32 '';
33
34 checkPhase = ''
35 py.test
36 '';
37
38 # https://github.com/pyca/pynacl/issues/550
39 PYTEST_ADDOPTS = "-k 'not test_wrong_types'";
40
41 meta = with stdenv.lib; {
42 maintainers = with maintainers; [ va1entin ];
43 description = "Python binding to the Networking and Cryptography (NaCl) library";
44 homepage = "https://github.com/pyca/pynacl/";
45 license = licenses.asl20;
46 };
47}