1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 asn1crypto,
6 cbor2,
7 pythonOlder,
8 pyopenssl,
9 pytestCheckHook,
10}:
11
12buildPythonPackage rec {
13 pname = "webauthn";
14 version = "2.1.0";
15 format = "setuptools";
16
17 disabled = pythonOlder "3.8";
18
19 src = fetchFromGitHub {
20 owner = "duo-labs";
21 repo = "py_webauthn";
22 rev = "refs/tags/v${version}";
23 hash = "sha256-AfQ3lt0WvoThU5kCE7MzhAXwbqmNaCrUqOMWI937hO4=";
24 };
25
26 propagatedBuildInputs = [
27 asn1crypto
28 cbor2
29 pyopenssl
30 ];
31
32 nativeCheckInputs = [ pytestCheckHook ];
33
34 pythonImportsCheck = [ "webauthn" ];
35
36 disabledTests = [
37 # TypeError: X509StoreContextError.__init__() missing 1 required...
38 "test_throws_on_bad_root_cert"
39 ];
40
41 meta = with lib; {
42 description = "Implementation of the WebAuthn API";
43 homepage = "https://github.com/duo-labs/py_webauthn";
44 changelog = "https://github.com/duo-labs/py_webauthn/blob/v${version}/CHANGELOG.md";
45 license = licenses.bsd3;
46 maintainers = with maintainers; [ ];
47 };
48}