diff --git a/packages/neuron/install-python-prefix.patch b/packages/neuron/install-python-prefix.patch
new file mode 100644
index 0000000000000000000000000000000000000000..034814cc029bdf7af225242ec9ccdf8c3bf0728a
--- /dev/null
+++ b/packages/neuron/install-python-prefix.patch
@@ -0,0 +1,13 @@
+diff --git i/cmake/BuildOptionDefaults.cmake w/cmake/BuildOptionDefaults.cmake
+index cdf1b2892..b5c90d84a 100644
+--- i/cmake/BuildOptionDefaults.cmake
++++ w/cmake/BuildOptionDefaults.cmake
+@@ -32,7 +32,7 @@ else()
+   set(NRN_ENABLE_INTERNAL_READLINE_DEFAULT OFF)
+ endif()
+ # Some distributions may set the prefix. To avoid errors, unset it
+-set(NRN_MODULE_INSTALL_OPTIONS_DEFAULT "--prefix= --home=${CMAKE_INSTALL_PREFIX}")
++set(NRN_MODULE_INSTALL_OPTIONS_DEFAULT "--prefix=${CMAKE_INSTALL_PREFIX}")
+ set(NRN_PYTHON_DYNAMIC_DEFAULT "")
+ set(NRN_MPI_DYNAMIC_DEFAULT "")
+ set(NRN_RX3D_OPT_LEVEL_DEFAULT "0")
diff --git a/packages/neuron/package.py b/packages/neuron/package.py
index 313c8e6ed7abb064113e37af50e79e9e359709c1..e564ba5fb04771c09c805f50663a5158678457c9 100644
--- a/packages/neuron/package.py
+++ b/packages/neuron/package.py
@@ -53,8 +53,11 @@ class Neuron(CMakePackage):
     depends_on("caliper", when="+caliper")
     depends_on("py-numpy", type="run")
 
+    extends('python', when='+python')
+
     patch("patch-v782-git-cmake-avx512.patch", when="@7.8.2")
     patch("nrn_find_ncurses.patch", when="@8.2.2")
+    patch("install-python-prefix.patch", when="@8:9+python")
 
     def cmake_args(self):
         spec = self.spec
@@ -140,22 +143,6 @@ class Neuron(CMakePackage):
             corenrn_makefile = join_path(self.prefix, "share/coreneuron/nrnivmodl_core_makefile")
             filter_file(env["CXX"], cxx_compiler, corenrn_makefile, **kwargs)
 
-    def setup_run_environment(self, env):
-        env.prepend_path("PATH", join_path(self.prefix, "bin"))
-        env.prepend_path("LD_LIBRARY_PATH", join_path(self.prefix, "lib"))
-        if self.spec.satisfies("+python"):
-            env.prepend_path("PYTHONPATH", self.spec.prefix.lib.python)
-
-    # override setup_{build/run}_environment for standalone package tests
-    def setup_build_environment(self, env):
-        self.setup_run_environment(env)
-
-    def setup_dependent_build_environment(self, env, dependent_spec):
-        self.setup_run_environment(env)
-
-    def setup_dependent_run_environment(self, env, dependent_spec):
-        self.setup_run_environment(env)
-
     @run_after('install')
     @on_package_attributes(run_tests=True)
     def install_test(self):