diff --git a/src/mpsd_software_manager/mpsd_software.py b/src/mpsd_software_manager/mpsd_software.py
index abcec774bd047f91700f05bce34efe14904a5d01..2a3f021451415cb63ddd7fb15b0d3abd0355dd83 100755
--- a/src/mpsd_software_manager/mpsd_software.py
+++ b/src/mpsd_software_manager/mpsd_software.py
@@ -1214,7 +1214,8 @@ def remove_spack_package(spack_dir, package):
     logging.info(f"Removing spack package {package}")
     spack_env = spack_dir / "share" / "spack" / "setup-env.sh"
     commands_to_execute = [
-        f"source {spack_env}",
+        f"export SPACK_DIR={spack_dir}",  # need to set SPACK_DIR in dash and sh
+        f". {spack_env}",
         f"spack uninstall -y {package}",
     ]
     run(" && ".join(commands_to_execute), shell=True, check=True)