Patchwork [bitbake-devel,1/2] ui/crumbs/utils.py: new file for choosing terminals

login
register
mail settings
Submitter Saul Wold
Date April 10, 2012, 10:20 p.m.
Message ID <1334096411-27965-1-git-send-email-sgw@linux.intel.com>
Download mbox | patch
Permalink /patch/25539/
State New
Headers show

Comments

Saul Wold - April 10, 2012, 10:20 p.m.
Adding this simple version of a terminal selector for use
hob since it's needed. Moving forward in the 1.3 release
the existing code in meta/lib/oe/termnial.py will be migrated
to core bitbake code and this will use that code.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 lib/bb/ui/crumbs/utils.py |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)
 create mode 100644 lib/bb/ui/crumbs/utils.py
Richard Purdie - April 10, 2012, 10:52 p.m.
On Tue, 2012-04-10 at 15:20 -0700, Saul Wold wrote:
> Adding this simple version of a terminal selector for use
> hob since it's needed. Moving forward in the 1.3 release
> the existing code in meta/lib/oe/termnial.py will be migrated
> to core bitbake code and this will use that code.
> 
> Signed-off-by: Saul Wold <sgw@linux.intel.com>
> ---
>  lib/bb/ui/crumbs/utils.py |   33 +++++++++++++++++++++++++++++++++
>  1 files changed, 33 insertions(+), 0 deletions(-)
>  create mode 100644 lib/bb/ui/crumbs/utils.py
> 
> diff --git a/lib/bb/ui/crumbs/utils.py b/lib/bb/ui/crumbs/utils.py
> new file mode 100644
> index 0000000..6526c15
> --- /dev/null
> +++ b/lib/bb/ui/crumbs/utils.py
> @@ -0,0 +1,33 @@
> +#
> +# BitBake UI Utils 
> +#
> +# Copyright (C) 2012 Intel Corporation
> +#
> +# This program is free software; you can redistribute it and/or modify
> +# it under the terms of the GNU General Public License version 2 as
> +# published by the Free Software Foundation.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License along
> +# with this program; if not, write to the Free Software Foundation, Inc.,
> +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
> +
> +# This utility method looks for xterm or vte and return the 
> +# frist to exist, currently we are keeping this simple, but 
> +# we will likely move the oe.terminal implementation into 
> +# bitbake which will allow more flexibility.
> +
> +import os
> +
> +def which_terminal():
> +    term = bb.utils.which(os.environ["PATH"], "xterm")
> +    if not term:
> +        term = bb.utils.which(os.environ["PATH"], "vte")
> +        return term + " -c " 
> +    else:
> +        return term + " -e "

What happens when this tries to execute None + "-c"?

You want something like
 
    term = bb.utils.which(os.environ["PATH"], "xterm")
    if term:
        return term + " -e"
    term = bb.utils.which(os.environ["PATH"], "vte")
    if term:
        return term + " -c " 
    return None

Cheers,

Richard

Patch

diff --git a/lib/bb/ui/crumbs/utils.py b/lib/bb/ui/crumbs/utils.py
new file mode 100644
index 0000000..6526c15
--- /dev/null
+++ b/lib/bb/ui/crumbs/utils.py
@@ -0,0 +1,33 @@ 
+#
+# BitBake UI Utils 
+#
+# Copyright (C) 2012 Intel Corporation
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+# This utility method looks for xterm or vte and return the 
+# frist to exist, currently we are keeping this simple, but 
+# we will likely move the oe.terminal implementation into 
+# bitbake which will allow more flexibility.
+
+import os
+
+def which_terminal():
+    term = bb.utils.which(os.environ["PATH"], "xterm")
+    if not term:
+        term = bb.utils.which(os.environ["PATH"], "vte")
+        return term + " -c " 
+    else:
+        return term + " -e "
+