diff --git a/src/nix-build/nix-build.cc b/src/nix-build/nix-build.cc
index 4d80a0c533a59b917703fbef6f06b779835b5c66..ee6d2699af50737ca297e3d5fe5d4e5bf8c6f4e2 100755
--- a/src/nix-build/nix-build.cc
+++ b/src/nix-build/nix-build.cc
@@ -332,7 +332,7 @@ int main(int argc, char ** argv)
         }
 
         if (runEnv)
-            setenv("IN_NIX_SHELL", "1", 1);
+            setenv("IN_NIX_SHELL", pure ? "pure" : "impure", 1);
 
         for (auto & expr : exprs) {
             // Instantiate.