hig/builder: use the new which_terminal() function

Also adjusted the cmdline ordering to work correctly
with both xterm and vte.

(Bitbake rev: 4219e2ea033232d95117211947b751bdb5efafd4)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Saul Wold 2012-04-10 17:57:15 -07:00 committed by Richard Purdie
parent 4be09eec6a
commit 9789ed626b
2 changed files with 12 additions and 7 deletions

View File

@ -37,6 +37,7 @@ from bb.ui.crumbs.hig import CrumbsMessageDialog, ImageSelectionDialog, \
AdvancedSettingDialog, LayerSelectionDialog, \ AdvancedSettingDialog, LayerSelectionDialog, \
DeployImageDialog DeployImageDialog
from bb.ui.crumbs.persistenttooltip import PersistentTooltip from bb.ui.crumbs.persistenttooltip import PersistentTooltip
import bb.ui.crumbs.utils
class Configuration: class Configuration:
'''Represents the data structure of configuration.''' '''Represents the data structure of configuration.'''
@ -969,12 +970,13 @@ class Builder(gtk.Window):
if response == gtk.RESPONSE_YES: if response == gtk.RESPONSE_YES:
source_env_path = os.path.join(self.parameters.core_base, "oe-init-build-env") source_env_path = os.path.join(self.parameters.core_base, "oe-init-build-env")
tmp_path = self.parameters.tmpdir tmp_path = self.parameters.tmpdir
cmdline = bb.ui.crumbs.utils.which_terminal()
if os.path.exists(image_path) and os.path.exists(kernel_path) \ if os.path.exists(image_path) and os.path.exists(kernel_path) \
and os.path.exists(source_env_path) and os.path.exists(tmp_path): and os.path.exists(source_env_path) and os.path.exists(tmp_path)
cmdline = "/usr/bin/xterm -e " and cmdline:
cmdline += "\" export OE_TMPDIR=" + tmp_path + "; " cmdline += "\' bash -c \"export OE_TMPDIR=" + tmp_path + "; "
cmdline += "source " + source_env_path + " " + os.getcwd() + "; " cmdline += "source " + source_env_path + " " + os.getcwd() + "; "
cmdline += "runqemu " + kernel_path + " " + image_path + "; bash\"" cmdline += "runqemu " + kernel_path + " " + image_path + "\"\'"
subprocess.Popen(shlex.split(cmdline)) subprocess.Popen(shlex.split(cmdline))
else: else:
lbl = "<b>Path error</b>\nOne of your paths is wrong," lbl = "<b>Path error</b>\nOne of your paths is wrong,"
@ -983,6 +985,7 @@ class Builder(gtk.Window):
lbl = lbl + "kernel path:" + kernel_path + "\n" lbl = lbl + "kernel path:" + kernel_path + "\n"
lbl = lbl + "source environment path:" + source_env_path + "\n" lbl = lbl + "source environment path:" + source_env_path + "\n"
lbl = lbl + "tmp path: " + tmp_path + "." lbl = lbl + "tmp path: " + tmp_path + "."
lbl = lbl + "You may be missing either xterm or vte for terminal services."
dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_ERROR) dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_ERROR)
button = dialog.add_button("Close", gtk.RESPONSE_OK) button = dialog.add_button("Close", gtk.RESPONSE_OK)
HobButton.style_button(button) HobButton.style_button(button)

View File

@ -30,6 +30,7 @@ import shlex
from bb.ui.crumbs.hobcolor import HobColors from bb.ui.crumbs.hobcolor import HobColors
from bb.ui.crumbs.hobwidget import hcc, hic, HobViewTable, HobInfoButton, HobButton, HobAltButton, HobIconChecker from bb.ui.crumbs.hobwidget import hcc, hic, HobViewTable, HobInfoButton, HobButton, HobAltButton, HobIconChecker
from bb.ui.crumbs.progressbar import HobProgressBar from bb.ui.crumbs.progressbar import HobProgressBar
import bb.ui.crumbs.utils
""" """
The following are convenience classes for implementing GNOME HIG compliant The following are convenience classes for implementing GNOME HIG compliant
@ -739,9 +740,10 @@ class DeployImageDialog (CrumbsDialog):
if response_id == gtk.RESPONSE_YES: if response_id == gtk.RESPONSE_YES:
combo_item = self.usb_combo.get_active_text() combo_item = self.usb_combo.get_active_text()
if combo_item and combo_item != self.__dummy_usb__: if combo_item and combo_item != self.__dummy_usb__:
cmdline = "/usr/bin/xterm -e " cmdline = bb.ui.crumbs.utils.which_terminal()
cmdline += "\"sudo dd if=" + self.image_path + " of=" + combo_item + "; bash\"" if cmdline:
subprocess.Popen(args=shlex.split(cmdline)) cmdline += "\"sudo dd if=" + self.image_path + " of=" + combo_item + "\""
subprocess.Popen(args=shlex.split(cmdline))
def update_progress_bar(self, title, fraction, status=None): def update_progress_bar(self, title, fraction, status=None):
self.progress_bar.update(fraction) self.progress_bar.update(fraction)