gst-uninstalled: make the bash prompt override optional
authorAntonio Ospite <antonio.ospite@collabora.com>
Fri, 8 Mar 2019 16:38:43 +0000 (17:38 +0100)
committerAntonio Ospite <antonio.ospite@collabora.com>
Sun, 17 Mar 2019 20:08:08 +0000 (21:08 +0100)
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
gst-uninstalled.py

index 5ccc9ef..8e1ac7a 100644 (file)
--- 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
 
index 01b40fe..1e5adab 100755 (executable)
@@ -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')