diff --git a/mpsd-software-environment.py b/mpsd-software-environment.py
index 34448889480cfa687e590dff886ed2a6434fbc68..e9de0b872784bd8363bcdcc3bc1bcfb7db8b38e7 100755
--- a/mpsd-software-environment.py
+++ b/mpsd-software-environment.py
@@ -853,13 +853,22 @@ def environment_status(mpsd_release: str, root_dir: Union[str, Path]) -> dict:
     toolchain_dir = release_base_dir / microarch
     spack_dir = toolchain_dir / "spack"
 
+    # if the mpsd_release does not exist:
+    if not release_base_dir.exists():
+        logging.debug(f"Directory {str(release_base_dir)} does not exist.")
+        logging.error(f"MPSD release '{mpsd_release}' is not installed.")
+        return None
+
+    # if the mpds_release directory exists but the spack repository is not fully
+    # cloned - indicates some kind of incomplete installation:
     if not spack_dir.exists():
         logging.debug(f"Looking for files in {spack_dir}")
         logging.error(
-            f"Release {mpsd_release} has not been completely installed yet"
-            ", or is missing."
+            f"MPSD release '{mpsd_release}' has not been completely installed."
         )
+
         return None
+
     # find all folders for all microarch in the release directory
     # except for the blacklisted files
     black_listed_files = [
@@ -870,8 +879,9 @@ def environment_status(mpsd_release: str, root_dir: Union[str, Path]) -> dict:
     ]
 
     list_of_microarchs_candidates = os.listdir(release_base_dir)
-    list_of_microarchs = [x for x in list_of_microarchs_candidates if x not in
-                          black_listed_files]
+    list_of_microarchs = [
+        x for x in list_of_microarchs_candidates if x not in black_listed_files
+    ]
     logging.debug(f"{list_of_microarchs=}")
 
     toolchain_map = {}