diff --git a/pkgs/applications/science/logic/z3/default.nix b/pkgs/applications/science/logic/z3/default.nix
index 532df11209b8..5eda2da60566 100644
--- a/pkgs/applications/science/logic/z3/default.nix
+++ b/pkgs/applications/science/logic/z3/default.nix
@@ -1,8 +1,6 @@
-{ stdenv, fetchFromGitHub, python2, fixDarwinDylibNames }:
+{ stdenv, fetchFromGitHub, python, fixDarwinDylibNames }:
 
-let
-  python = python2;
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   name = "z3-${version}";
   version = "4.6.0";
 
@@ -14,6 +12,7 @@ in stdenv.mkDerivation rec {
   };
 
   buildInputs = [ python fixDarwinDylibNames ];
+  propagatedBuildInputs = [ python.pkgs.setuptools ];
   enableParallelBuilding = true;
 
   configurePhase = ''
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 982ed08a7bbc..b4c48fce84f0 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -19468,7 +19468,7 @@ with pkgs;
   };
 
   z3_4_5_0 = callPackage ../applications/science/logic/z3/4.5.0.nix {};
-  z3 = callPackage ../applications/science/logic/z3 {};
+  z3 = callPackage ../applications/science/logic/z3 { python = python2; };
 
   aiger = callPackage ../applications/science/logic/aiger {};