about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/pre-commit/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pre-commit/default.nix')
-rw-r--r--nixpkgs/pkgs/development/python-modules/pre-commit/default.nix16
1 files changed, 11 insertions, 5 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pre-commit/default.nix b/nixpkgs/pkgs/development/python-modules/pre-commit/default.nix
index 6d0a7d301ede..a933093bef42 100644
--- a/nixpkgs/pkgs/development/python-modules/pre-commit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pre-commit/default.nix
@@ -6,6 +6,7 @@
 , identify
 , importlib-metadata
 , importlib-resources
+, isPy27
 , nodeenv
 , python
 , six
@@ -15,16 +16,18 @@
 
 buildPythonPackage rec {
   pname = "pre-commit";
-  version = "1.21.0";
+  version = "2.4.0";
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit version;
     pname = "pre_commit";
-    sha256 = "0l5qg1cw4a0670m96s0ryy5mqz5aslfrrnwpriqgmrnsgdixhj4g";
+    sha256 = "1l0lcl3l2544m2k8jlmblfsjn0p2hdxrzzwy646xpvp0rcs2wgkh";
   };
 
   patches = [
     ./hook-tmpl-use-the-hardcoded-path-to-pre-commit.patch
+    ./languages-use-the-hardcoded-path-to-python-binaries.patch
   ];
 
   propagatedBuildInputs = [
@@ -36,9 +39,8 @@ buildPythonPackage rec {
     six
     toml
     virtualenv
-    importlib-metadata
-  ] ++ lib.optional (pythonOlder "3.7") importlib-resources
-    ++ lib.optional (pythonOlder "3.2") futures;
+  ] ++ lib.optional (pythonOlder "3.8") importlib-metadata
+    ++ lib.optional (pythonOlder "3.7") importlib-resources;
 
   # slow and impure
   doCheck = false;
@@ -46,6 +48,10 @@ buildPythonPackage rec {
   preFixup = ''
     substituteInPlace $out/${python.sitePackages}/pre_commit/resources/hook-tmpl \
       --subst-var-by pre-commit $out
+    substituteInPlace $out/${python.sitePackages}/pre_commit/languages/python.py \
+      --subst-var-by virtualenv ${virtualenv}
+    substituteInPlace $out/${python.sitePackages}/pre_commit/languages/node.py \
+      --subst-var-by nodeenv ${nodeenv}
   '';
 
   meta = with lib; {