diff --git a/python-setup/auto_install_packages.py b/python-setup/auto_install_packages.py
index f9db92520..54a2d9669 100755
--- a/python-setup/auto_install_packages.py
+++ b/python-setup/auto_install_packages.py
@@ -4,6 +4,7 @@
 import os
 import subprocess
 from tempfile import mkdtemp
+from typing import Optional
 
 import extractor_version
 
@@ -101,7 +102,7 @@ def install_with_setup_py(version: int):
     return venv_python
 
 
-def install_packages() -> str:
+def install_packages(codeql_base_dir) -> Optional[str]:
     if os.path.exists('poetry.lock'):
         print('Found poetry.lock, will install packages with poetry', flush=True)
         return install_packages_with_poetry()
@@ -113,7 +114,7 @@ def install_packages() -> str:
             print('Found Pipfile, will install packages with Pipenv', flush=True)
         return install_packages_with_pipenv()
 
-    version = extractor_version.get_extractor_version(sys.argv[1], quiet=False)
+    version = extractor_version.get_extractor_version(codeql_base_dir, quiet=False)
 
     if os.path.exists('requirements.txt'):
         print('Found requirements.txt, will install packages with pip', flush=True)
@@ -124,17 +125,20 @@ def install_packages() -> str:
         return install_with_setup_py(version)
 
     print("was not able to install packages automatically", flush=True)
+    return None
 
 
 if __name__ == "__main__":
     if len(sys.argv) != 2:
         sys.exit('Must provide base directory for codeql tool as only argument')
 
+    codeql_base_dir = sys.argv[1]
+
     # The binaries for packages installed with `pip install --user` are not available on
     # PATH by default, so we need to manually add them.
     os.environ['PATH'] = os.path.expanduser('~/.local/bin') + os.pathsep + os.environ['PATH']
 
-    python_executable_path = install_packages()
+    python_executable_path = install_packages(codeql_base_dir)
 
     if python_executable_path is not None:
         print("Setting CODEQL_PYTHON={}".format(python_executable_path))