at 25.11-pre 1.3 kB view raw
1{ 2 argon2-cffi, 3 bcrypt, 4 buildPythonPackage, 5 cryptography, 6 fetchFromGitHub, 7 hatchling, 8 lib, 9 pytest-archon, 10 pytest-xdist, 11 pytestCheckHook, 12 typing-extensions, 13}: 14 15buildPythonPackage rec { 16 pname = "libpass"; 17 version = "1.9.0"; 18 pyproject = true; 19 20 src = fetchFromGitHub { 21 owner = "ThirVondukr"; 22 repo = "passlib"; 23 tag = version; 24 hash = "sha256-Q5OEQkty0/DugRvF5LA+PaDDlF/6ysx4Nel5K2kH5s4="; 25 }; 26 27 build-system = [ hatchling ]; 28 29 dependencies = [ 30 typing-extensions 31 ]; 32 33 optional-dependencies = { 34 argon2 = [ argon2-cffi ]; 35 bcrypt = [ bcrypt ]; 36 totp = [ cryptography ]; 37 }; 38 39 nativeCheckInputs = [ 40 pytest-archon 41 pytest-xdist 42 pytestCheckHook 43 ] ++ lib.flatten (lib.attrValues optional-dependencies); 44 45 pythonImportsCheck = [ "passlib" ]; 46 47 disabledTests = [ 48 # timming sensitive 49 "test_dummy_verify" 50 "test_encrypt_cost_timing" 51 ]; 52 53 meta = { 54 changelog = "https://github.com/ThirVondukr/passlib/blob/${src.tag}/CHANGELOG.md"; 55 description = "Comprehensive password hashing framework supporting over 30 schemes"; 56 homepage = "https://github.com/ThirVondukr/passlib"; 57 license = lib.licenses.bsd3; 58 maintainers = with lib.maintainers; [ dotlambda ]; 59 }; 60}