diff --git a/tools/lib/provision_inner.py b/tools/lib/provision_inner.py index da6520e99a..f77dac21a3 100755 --- a/tools/lib/provision_inner.py +++ b/tools/lib/provision_inner.py @@ -93,8 +93,16 @@ def setup_shell_profile(shell_profile: str) -> None: with open(shell_profile_path, "w") as shell_profile_file: shell_profile_file.writelines(command + "\n") - source_activate_command = "source " + os.path.join(VENV_PATH, "bin", "activate") - write_command(source_activate_command) + # Check if the environment is one of the dedicated containers: Vagrant, Docker, Droplet or WSL2 + WSL = os.path.exists("/proc/sys/fs/binfmt_misc/WSLInterop") + vagrant = os.path.exists("/vagrant") + docker = os.path.exists("/var/run/docker.sock") + droplet = os.path.exists("/etc/digitalocean") + # If the environment matches one of the containers, write the activation command to the user's bash profile + if WSL or vagrant or docker or droplet: + source_activate_command = "source " + os.path.join(VENV_PATH, "bin", "activate") + write_command(source_activate_command) + if os.path.exists("/srv/zulip"): write_command("cd /srv/zulip")