diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 884dfbf2c19..43794589289 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1598,6 +1598,12 @@ githubId = 185443; name = "Alexey Lebedeff"; }; + binsky = { + email = "timo@binsky.org"; + github = "binsky08"; + githubId = 30630233; + name = "Timo Triebensky"; + }; bjg = { email = "bjg@gnu.org"; name = "Brian Gough"; diff --git a/pkgs/development/python-modules/sjcl/default.nix b/pkgs/development/python-modules/sjcl/default.nix new file mode 100644 index 00000000000..41da6669b54 --- /dev/null +++ b/pkgs/development/python-modules/sjcl/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, pycryptodome +, python +}: + +buildPythonPackage rec { + pname = "sjcl"; + version = "0.2.1"; + + format = "setuptools"; + + # PyPi release is missing tests + src = fetchFromGitHub { + owner = "berlincode"; + repo = pname; + # commit from: 2018-08-16, because there aren't any tags on git + rev = "e8bdad312fa99c89c74f8651a1240afba8a9f3bd"; + sha256 = "1v8rc55v28v8cl7nxcavj34am005wi63zcvwnbc6pyfbv4ss30ab"; + }; + + propagatedBuildInputs = [ pycryptodome ]; + + checkPhase = '' + runHook preCheck + ${python.interpreter} -m unittest discover + runHook postCheck + ''; + + pythonImportsCheck = [ + "sjcl" + ]; + + meta = with lib; { + description = "Decrypt and encrypt messages compatible to the \"Stanford Javascript Crypto Library (SJCL)\" message format. This is a wrapper around pycrypto."; + homepage = "https://github.com/berlincode/sjcl"; + license = licenses.bsd3; + maintainers = with maintainers; [ binsky ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 42bf379faca..dec038f9692 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9495,6 +9495,8 @@ in { six = callPackage ../development/python-modules/six { }; + sjcl = callPackage ../development/python-modules/sjcl { }; + skein = callPackage ../development/python-modules/skein { }; skidl = callPackage ../development/python-modules/skidl { };