From 8af2376bc0cf366019fc0212f2b441439ada1609 Mon Sep 17 00:00:00 2001 From: Antonio Ospite Date: Fri, 8 Mar 2019 17:38:43 +0100 Subject: [PATCH] gst-uninstalled: make the bash prompt override optional When using a custom prompt the automatic override may not look good, so provide a mechanism to disable it. Document that the user will have to use GST_ENV manually when setting the prompt to have a visual indicator of the gst-uninstalled environment. --- README.md | 14 +++++++++++++- gst-uninstalled.py | 3 ++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5ccc9ef18f..8e1ac7a1ca 100644 --- a/README.md +++ b/README.md @@ -136,7 +136,19 @@ built in a `build` directory you can simply run: ### Bash prompt -We automatically handle `bash` and set `$PS1` accordingly +We automatically handle `bash` and set `$PS1` accordingly. + +If the automatic `$PS1` override is not desired (maybe you have a fancy custom prompt), set the `$GST_BUILD_DISABLE_PS1_OVERRIDE` environment variable to `TRUE` and use `$GST_ENV` when setting the custom prompt, for example with a snippet like the following: + +```bash +... +if [[ -n "${GST_ENV-}" ]]; +then + PS1+="[ ${GST_ENV} ]" +fi +... + +``` ### Zsh prompt diff --git a/gst-uninstalled.py b/gst-uninstalled.py index 01b40fe244..1e5adabcde 100755 --- a/gst-uninstalled.py +++ b/gst-uninstalled.py @@ -14,6 +14,7 @@ import tempfile import pathlib from distutils.sysconfig import get_python_lib +from distutils.util import strtobool from common import get_meson from common import git @@ -229,7 +230,7 @@ if __name__ == "__main__": args += ['/k', 'prompt [gst-{}] $P$G'.format(gst_version)] else: args = [os.environ.get("SHELL", os.path.realpath("/bin/sh"))] - if "bash" in args[0]: + if "bash" in args[0] and not strtobool(os.environ.get("GST_BUILD_DISABLE_PS1_OVERRIDE", r"FALSE")): bashrc = os.path.expanduser('~/.bashrc') if os.path.exists(bashrc): tmprc = tempfile.NamedTemporaryFile(mode='w')