1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 cryptography,
7 pydantic,
8 typing-extensions,
9 pytestCheckHook,
10 pytest-asyncio,
11}:
12
13buildPythonPackage rec {
14 pname = "doubleratchet";
15 version = "1.1.0";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "Syndace";
20 repo = "python-doubleratchet";
21 tag = "v${version}";
22 hash = "sha256-yoph3u7LjGjSPi1hFlXzWmSNkCXvY/ocTt2MKa+F1fs=";
23 };
24
25 strictDeps = true;
26
27 build-system = [
28 setuptools
29 ];
30
31 dependencies = [
32 cryptography
33 pydantic
34 typing-extensions
35 ];
36
37 nativeCheckInputs = [
38 pytestCheckHook
39 pytest-asyncio
40 ];
41
42 pythonImportsCheck = [ "doubleratchet" ];
43
44 meta = {
45 description = "Python implementation of the Double Ratchet algorithm";
46 homepage = "https://github.com/Syndace/python-doubleratchet";
47 changelog = "https://github.com/Syndace/python-doubleratchet/blob/v${version}/CHANGELOG.md";
48 license = lib.licenses.mit;
49 teams = with lib.teams; [ ngi ];
50 maintainers = with lib.maintainers; [ axler1 ];
51 };
52}