diff --git a/pkgs/development/python-modules/x3dh/default.nix b/pkgs/development/python-modules/x3dh/default.nix new file mode 100644 index 000000000000..7dccc3edf2bb --- /dev/null +++ b/pkgs/development/python-modules/x3dh/default.nix @@ -0,0 +1,53 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + xeddsa, + cryptography, + pydantic, + typing-extensions, + pytestCheckHook, + pytest-asyncio, +}: +buildPythonPackage rec { + pname = "x3dh"; + version = "1.1.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Syndace"; + repo = "python-x3dh"; + tag = "v${version}"; + hash = "sha256-/hC1Kze4yBOlgbWJcGddcYty9fqwZ08Lyi0IiqSDibI="; + }; + + strictDeps = true; + + build-system = [ + setuptools + ]; + + dependencies = [ + xeddsa + cryptography + pydantic + typing-extensions + ]; + + nativeCheckInputs = [ + pytestCheckHook + pytest-asyncio + ]; + + pythonImportsCheck = [ "x3dh" ]; + + meta = { + description = "Python Implementation of the Extended Triple Diffie-Hellman key Agreement Protocol"; + homepage = "https://github.com/Syndace/python-x3dh"; + changelog = "https://github.com/Syndace/python-x3dh/blob/v${version}/CHANGELOG.md"; + license = lib.licenses.mit; + teams = with lib.teams; [ ngi ]; + maintainers = with lib.maintainers; [ ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 032963a1abe0..be009ea09c82 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -19106,6 +19106,8 @@ self: super: with self; { x256 = callPackage ../development/python-modules/x256 { }; + x3dh = callPackage ../development/python-modules/x3dh { }; + x690 = callPackage ../development/python-modules/x690 { }; xapian = callPackage ../development/python-modules/xapian { inherit (pkgs) xapian; };