1{ lib
2, buildPythonPackage
3, fetchPypi
4, unittest2
5, pyasn1
6, mock
7, isPy3k
8, pythonOlder
9}:
10
11buildPythonPackage rec {
12 pname = "rsa";
13 version = "4.0";
14
15 src = fetchPypi {
16 inherit pname version;
17 sha256 = "1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487";
18 };
19
20 checkInputs = [ unittest2 mock ];
21 propagatedBuildInputs = [ pyasn1 ];
22
23 preConfigure = lib.optionalString (isPy3k && pythonOlder "3.7") ''
24 substituteInPlace setup.py --replace "open('README.md')" "open('README.md',encoding='utf-8')"
25 '';
26
27 meta = with lib; {
28 homepage = "https://stuvel.eu/rsa";
29 license = licenses.asl20;
30 description = "A pure-Python RSA implementation";
31 };
32
33}