diff --git a/pkgs/development/python-modules/packaging/2.nix b/pkgs/development/python-modules/packaging/2.nix new file mode 100644 index 000000000000..36764e64b860 --- /dev/null +++ b/pkgs/development/python-modules/packaging/2.nix @@ -0,0 +1,40 @@ +{ stdenv +, buildPythonPackage +, fetchPypi +, pyparsing +, six +, pytestCheckHook +, pretend +, flit-core +}: + +# We keep 20.4 because it uses setuptools instead of flit-core +# which requires Python 3 to build a universal wheel. + +buildPythonPackage rec { + pname = "packaging"; + version = "20.4"; + format = "setuptools"; + + src = fetchPypi { + inherit pname version; + sha256 = "4357f74f47b9c12db93624a82154e9b120fa8293699949152b22065d556079f8"; + }; + + propagatedBuildInputs = [ pyparsing six ]; + + checkInputs = [ + pytestCheckHook + pretend + ]; + + # Prevent circular dependency + doCheck = false; + + meta = with stdenv.lib; { + description = "Core utilities for Python packages"; + homepage = "https://github.com/pypa/packaging"; + license = [ licenses.bsd2 licenses.asl20 ]; + maintainers = with maintainers; [ bennofs ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 675ddd869d74..feaff55a783d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4348,7 +4348,9 @@ in { oyaml = callPackage ../development/python-modules/oyaml { }; - packaging = callPackage ../development/python-modules/packaging { }; + packaging = if isPy3k + then callPackage ../development/python-modules/packaging { } + else callPackage ../development/python-modules/packaging/2.nix { }; packet-python = callPackage ../development/python-modules/packet-python { };