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