[OE-core] [oe-core][PATCH] terminal.py: No --disable-factory for gnome-terminal >= 3.10

Sven Ebenfeld sven.ebenfeld at gmail.com
Sat Feb 21 10:44:20 UTC 2015


--disable-factory has been disabled in earlier versions of gnome-terminal
but from version 3.10 it raises an error and quits. This makes devshell
unusable with gnome-terminal >= 3.10. This patch checks for the version and
removes --disable-factory if you have the terminal version 3.10 or higher.

Signed-off-by: Sven Ebenfeld <sven.ebenfeld at gmail.com>
---
 meta/lib/oe/terminal.py | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
index 54e3ffc..a02638f 100644
--- a/meta/lib/oe/terminal.py
+++ b/meta/lib/oe/terminal.py
@@ -55,6 +55,17 @@ class Gnome(XTerminal):
     command = 'gnome-terminal -t "{title}" --disable-factory -x {command}'
     priority = 2
 
+    def __init__(self, sh_cmd, title=None, env=None, d=None):
+        # Check version
+        vernum = check_konsole_version("gnome-terminal")
+        if vernum:
+            major = int(vernum.split('.')[0])
+            minor = int(vernum.split('.')[1])
+            if major >= 3 and minor >= 10:
+                logger.warn(1, 'Gnome-Terminal >3.10 does not support --disable-factory')
+                self.command = 'gnome-terminal -t "{title}" -x {command}'
+        XTerminal.__init__(self, sh_cmd, title, env, d)
+
 class Mate(XTerminal):
     command = 'mate-terminal -t "{title}" -x {command}'
     priority = 2
@@ -235,6 +246,8 @@ def check_konsole_version(konsole):
     for ver in ver_info:
         if ver.startswith('Konsole'):
             vernum = ver.split(' ')[-1]
+	if ver.startswith('GNOME Terminal'):
+            vernum = ver.split(' ')[-1]
     return vernum
 
 def distro_name():
-- 
1.9.3




More information about the Openembedded-core mailing list