diff --git a/python/README.md b/python/README.md
index 236956fc09bfaa3282d80c103fd932fc1147ffc6..5fb8c28584a770b70d46ab78ccff1182930e98ad 100644
--- a/python/README.md
+++ b/python/README.md
@@ -40,11 +40,11 @@ Then run dunecontrol which also builds the Dune Python bindings.
 ./dune-common/bin/dunecontrol --opts=cmake.opts all
 ```
 
-Add the Python binding modules to your Python path like this and install them:
+Add the Python binding modules to your Python path like this and install them with
+the setup environment setup script
 
 ```
-export PYTHONPATH=$(pwd)/dune-common/build-cmake/python:$(pwd)/dune-grid/build-cmake/python:$(pwd)/dune-geometry/build-cmake/python:$(pwd)/dune-istl/build-cmake/python:$(pwd)/dune-localfunctions/build-cmake/python:$(pwd)/dumux/build-cmake/python
-python3 dune-common/bin/setup-dunepy.py --opts=cmake.opts install
+source dumux/python/setup-python-env.sh
 ```
 
 If you are getting error with loading MPI in Python you might need to preload the MPI library
diff --git a/python/setup-python-env.sh b/python/setup-python-env.sh
new file mode 100755
index 0000000000000000000000000000000000000000..f99c549c7abd1844ab413e45a81e67a5048d2f96
--- /dev/null
+++ b/python/setup-python-env.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+# Adds all Python modules found in other Dune modules to the PYTHONPATH
+./dune-common/bin/dunecontrol bexec "echo -n :\$(pwd)/python >> $(pwd)/pythonpath.txt"
+export PYTHONPATH=$PYTHONPATH$(cat pythonpath.txt)
+rm pythonpath.txt
+# Sets up the dune-py module for JIT compilation of Python binding code
+./dune-common/bin/setup-dunepy.py --opts=cmake.opts install