diff --git a/pkgs/development/python-modules/bundlewrap/default.nix b/pkgs/development/python-modules/bundlewrap/default.nix index 05efac3ed97c..98d07040218b 100644 --- a/pkgs/development/python-modules/bundlewrap/default.nix +++ b/pkgs/development/python-modules/bundlewrap/default.nix @@ -31,12 +31,6 @@ buildPythonPackage rec { }; build-system = [ setuptools ]; - - pythonRemoveDeps = [ - # distinfo renamed to libpass, but still imports as passlib - "passlib" - ]; - dependencies = [ setuptools cryptography diff --git a/pkgs/development/python-modules/libpass/default.nix b/pkgs/development/python-modules/libpass/default.nix new file mode 100644 index 000000000000..552635219bd7 --- /dev/null +++ b/pkgs/development/python-modules/libpass/default.nix @@ -0,0 +1,60 @@ +{ + argon2-cffi, + bcrypt, + buildPythonPackage, + cryptography, + fetchFromGitHub, + hatchling, + lib, + pytest-archon, + pytest-xdist, + pytestCheckHook, + typing-extensions, +}: + +buildPythonPackage rec { + pname = "libpass"; + version = "1.9.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "ThirVondukr"; + repo = "passlib"; + tag = version; + hash = "sha256-Q5OEQkty0/DugRvF5LA+PaDDlF/6ysx4Nel5K2kH5s4="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + typing-extensions + ]; + + optional-dependencies = { + argon2 = [ argon2-cffi ]; + bcrypt = [ bcrypt ]; + totp = [ cryptography ]; + }; + + nativeCheckInputs = [ + pytest-archon + pytest-xdist + pytestCheckHook + ] ++ lib.flatten (lib.attrValues optional-dependencies); + + pythonImportsCheck = [ "passlib" ]; + + disabledTests = [ + # timming sensitive + "test_dummy_verify" + "test_encrypt_cost_timing" + ]; + + meta = { + changelog = "https://github.com/ThirVondukr/passlib/blob/${src.tag}/CHANGELOG.md"; + description = "Comprehensive password hashing framework supporting over 30 schemes"; + homepage = "https://github.com/ThirVondukr/passlib"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/mitmproxy/default.nix b/pkgs/development/python-modules/mitmproxy/default.nix index 0b24d3e1a41b..cc2a56ea2544 100644 --- a/pkgs/development/python-modules/mitmproxy/default.nix +++ b/pkgs/development/python-modules/mitmproxy/default.nix @@ -51,6 +51,7 @@ buildPythonPackage rec { }; pythonRelaxDeps = [ + "h2" "passlib" "protobuf" "pyparsing" diff --git a/pkgs/development/python-modules/passlib/default.nix b/pkgs/development/python-modules/passlib/default.nix index a82f16db5f26..a835196935f8 100644 --- a/pkgs/development/python-modules/passlib/default.nix +++ b/pkgs/development/python-modules/passlib/default.nix @@ -1,58 +1,14 @@ { - lib, - buildPythonPackage, - fetchFromGitHub, - argon2-cffi, - bcrypt, - cryptography, - hatchling, - pytestCheckHook, - pytest-archon, - pytest-xdist, - typing-extensions, + libpass, + mkPythonMetaPackage, }: -buildPythonPackage rec { +mkPythonMetaPackage { pname = "passlib"; - version = "1.9.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "ThirVondukr"; - repo = "passlib"; - tag = version; - hash = "sha256-Q5OEQkty0/DugRvF5LA+PaDDlF/6ysx4Nel5K2kH5s4="; - }; - - build-system = [ hatchling ]; - - dependencies = [ typing-extensions ]; - - optional-dependencies = { - argon2 = [ argon2-cffi ]; - bcrypt = [ bcrypt ]; - totp = [ cryptography ]; - }; - - nativeCheckInputs = [ - pytestCheckHook - pytest-archon - pytest-xdist - ] ++ lib.flatten (lib.attrValues optional-dependencies); - - pythonImportsCheck = [ "passlib" ]; - - disabledTests = [ - # timming sensitive - "test_dummy_verify" - "test_encrypt_cost_timing" - ]; - + inherit (libpass) version; + dependencies = [ libpass ]; + optional-dependencies = libpass.optional-dependencies or { }; meta = { - changelog = "https://github.com/ThirVondukr/passlib/blob/${src.tag}/CHANGELOG.md"; - description = "Password hashing library for Python"; - homepage = "https://github.com/ThirVondukr/passlib"; - license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ dotlambda ]; + inherit (libpass.meta) changelog description homepage; }; } diff --git a/pkgs/servers/mail/mailman/package.nix b/pkgs/servers/mail/mailman/package.nix index 6e0df870b378..cb5dc354cf74 100644 --- a/pkgs/servers/mail/mailman/package.nix +++ b/pkgs/servers/mail/mailman/package.nix @@ -26,11 +26,6 @@ buildPythonPackage rec { setuptools ]; - pythonRemoveDeps = [ - # distinfo renamed to libpass - "passlib" - ]; - dependencies = with python3.pkgs; [ aiosmtpd alembic diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0759a9bdd1e0..344f93c65830 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7718,6 +7718,8 @@ self: super: with self; { } ); + libpass = callPackage ../development/python-modules/libpass { }; + libpcap = callPackage ../development/python-modules/libpcap { pkgsLibpcap = pkgs.libpcap; # Needs the C library };