Patchwork [bitbake-devel] bitbake: support $BITBAKE_UI environment

login
register
mail settings
Submitter Enrico Scholz
Date May 20, 2012, 3:19 p.m.
Message ID <1337527151-3526-1-git-send-email-enrico.scholz@sigma-chemnitz.de>
Download mbox | patch
Permalink /patch/28007/
State Accepted
Commit e3c213015953d1a0afb5ef4be59e1264990e5cee
Headers show

Comments

Enrico Scholz - May 20, 2012, 3:19 p.m.
Patch adds support for a $BITBAKE_UI environment variable which allows
to configure the preferred user interface. Although an '-u' option
(which will override the environment variable) exists already, it was
required to specify this option on every invocation of bitbake.

Because user interface is instanciated very early in the program it is
not possible to use bitbake.conf for setting up a default.  An
environment variable (which acts in a similar category like $PAGER or
$EDITOR) is a simple way for configuring the default.

Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
---
 bin/bitbake   |    9 +++++----
 doc/bitbake.1 |    6 ++++++
 2 files changed, 11 insertions(+), 4 deletions(-)
Richard Purdie - May 23, 2012, 10:30 a.m.
On Sun, 2012-05-20 at 17:19 +0200, Enrico Scholz wrote:
> Patch adds support for a $BITBAKE_UI environment variable which allows
> to configure the preferred user interface. Although an '-u' option
> (which will override the environment variable) exists already, it was
> required to specify this option on every invocation of bitbake.
> 
> Because user interface is instanciated very early in the program it is
> not possible to use bitbake.conf for setting up a default.  An
> environment variable (which acts in a similar category like $PAGER or
> $EDITOR) is a simple way for configuring the default.
> 
> Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
> ---
>  bin/bitbake   |    9 +++++----
>  doc/bitbake.1 |    6 ++++++
>  2 files changed, 11 insertions(+), 4 deletions(-)

Merged to master, thanks.

Richard

Patch

diff --git a/bin/bitbake b/bin/bitbake
index 420e69d..478ac06 100755
--- a/bin/bitbake
+++ b/bin/bitbake
@@ -56,10 +56,11 @@  class BBConfiguration(object):
 
 
 def get_ui(config):
-    if config.ui:
-        interface = config.ui
-    else:
-        interface = 'knotty'
+    if not config.ui:
+        # modify 'ui' attribute because it is also read by cooker
+        config.ui = os.environ.get('BITBAKE_UI', 'knotty')
+
+    interface = config.ui
 
     try:
         # Dynamically load the UI based on the ui name. Although we
diff --git a/doc/bitbake.1 b/doc/bitbake.1
index aa09620..d9d3902 100644
--- a/doc/bitbake.1
+++ b/doc/bitbake.1
@@ -103,7 +103,13 @@  Show debug logging for the specified logging domains
 .TP
 .B \-P, \-\-profile
 profile the command and print a report
+
+.SH ENVIRONMENT VARIABLES
+bitbake uses the following environment variables to control its
+operation:
 .TP
+.B BITBAKE_UI
+The bitbake user interface; overridden by the \fB-u\fP commandline option.
 
 .SH AUTHORS
 BitBake was written by