[prev in list] [next in list] [prev in thread] [next in thread] 

List:       moblin-commits
Subject:    [Moblin-Commits] moblin-image-creator: Changes to 'master'
From:       mitsutaka () moblin ! org (Mitsutaka)
Date:       2008-06-10 8:53:26
Message-ID: 20080610085326.5347992C1A0 () moblin ! org
[Download RAW message or body]

This email list is read-only.  Emails sent to this list will be discarded
----------------------------------
 debian/changelog          |    1 +
 gui/gui.py                |  231 +++++++++++++++++++---------------------
 gui/image-creator.glade   |    2 -
 image-creator             |  262 +++++++++++++++++++++++----------------------
 libs/InstallImage.py      |  103 +++++++++---------
 libs/Platform.py          |   39 ++++---
 libs/Project.py           |   93 ++++++++--------
 libs/SDK.py               |   69 ++++++------
 libs/fsets.py             |   13 ++-
 libs/mic_cfg.py           |   23 +++--
 libs/moblin_apt.py        |   45 ++++----
 libs/moblin_yum.py        |   33 +++---
 libs/pdk_utils.py         |   29 +++---
 po/POTFILES.in            |   14 +++
 utils/create-rootstrap.py |   11 ++-
 utils/jailroot-reset.py   |   13 ++-
 16 files changed, 509 insertions(+), 472 deletions(-)

New commits:
commit 7b14de2d732a59418349e1d7f1a42352ec4f312f
Author: Mitsutaka Amano <mamano@miraclelinux.com>
Date:   Tue Jun 10 17:50:34 2008 +0900

    Supported the internationalization.
    [TODO] I'll add ja.po file. It's base of some language po files.


Diff in this email is a maximum of 400 lines.
diff --git a/debian/changelog b/debian/changelog
index a209723..1bcc9a6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -48,6 +48,7 @@ moblin-image-creator (0.45) UNRELEASED; urgency=low
 
   [ Mitsutaka Amano ]
   * Supported autotools for preparing the internationalization.
+  * Supported the internationalization.
 
  -- Prajwal Mohan <prajwal@linux.intel.com>  Wed, 28 May 2008 22:29:09 +0900
 
diff --git a/gui/gui.py b/gui/gui.py
index 6776ca5..7cbdf2b 100644
--- a/gui/gui.py
+++ b/gui/gui.py
@@ -20,8 +20,6 @@ import gettext
 import gnome
 import gobject
 import gtk
-import gtk.glade
-import locale
 import os
 import pygtk
 import re
@@ -41,17 +39,6 @@ debug = False
 if mic_cfg.config.has_option('general', 'debug'):
     debug = int(mic_cfg.config.get('general', 'debug'))
 
-# Initial stuff for Internationlization and Localization support.
-# Locale stuff
-# Set the locale to always be the 'C' locale, since we have are not yet using
-# internationalization
-locale.setlocale(locale.LC_ALL, 'C')
-USER_LOCALE = locale.getlocale(locale.LC_ALL)
-
-# More info: http://docs.python.org/lib/i18n.html
-gettext.bindtextdomain('pdk', '/usr/share/pdk/locale')
-gettext.textdomain('pdk')
-gettext.install('pdk', '/usr/share/pdk/locale')
 _ = gettext.lgettext
     
 mountedDirs = set()
@@ -62,13 +49,13 @@ class term_mic(Thread):
         self.app = micApp
     
     def run(self):
-        print "Unmounting all mounted directories..."
+        print _("Unmounting all mounted directories...")
         global mountedDirs
         directory_set = self.sdk.umount()
         if directory_set:
-            print "Could not unmount these dirs: %s" % directory_set
+            print _("Could not unmount these dirs: %s") % directory_set
             mountedDirs = directory_set.copy()
-        print "Unmounting complete"
+        print _("Unmounting complete")
 
 
 class App(object):
@@ -149,7 +136,7 @@ class App(object):
             error_message = ""
             for proj in obsolete_projects:
                 error_message = error_message + " " + proj
-            self.show_error_dialog("Found unsupported project(s): %s\nskipping them" \
% error_message) +            self.show_error_dialog(_("Found unsupported project(s): \
%s\nskipping them") % error_message)  
     def run(self):
         gtk.main()
@@ -162,13 +149,13 @@ class App(object):
         term_thread.start()
 
         widgets = gtk.glade.XML(self.gladefile, 'error_dialog')
-        widgets.get_widget('error_label').set_text("Please wait while MIC attempts \
to unmount all projects and targets...") +        \
widgets.get_widget('error_label').set_text(_("Please wait while MIC attempts to \
unmount all projects and targets..."))  dialog = widgets.get_widget('error_dialog')
         vbox = widgets.get_widget('vbox18')
         progressbar = gtk.ProgressBar()
         vbox.pack_start(progressbar)
         dialog.connect('delete_event', self.ignore)
-        dialog.set_title("Closing Image-Creator")
+        dialog.set_title(_("Closing Image-Creator"))
         ok_button = widgets.get_widget('okbutton4')
         ok_button.set_sensitive(False)
         dialog.show_all()   
@@ -187,7 +174,7 @@ class App(object):
 
     def newFeatureDialog(self):
         if self.pygtkOldVersion == True:
-            self.show_error_dialog("You are using an old version of PyGTK. Image \
Creator required atleast PyGTK 2.12. Some features will be disabled") +            \
self.show_error_dialog(_("You are using an old version of PyGTK. Image Creator \
required atleast PyGTK 2.12. Some features will be disabled"))  return
         if os.path.isfile("/usr/share/pdk/newFeature"):
             newFeatureTree = gtk.glade.XML(self.gladefile, 'newFeature')
@@ -295,7 +282,7 @@ class App(object):
     def stop_progress(self, widget, cancelData):        
         #self.stopTest = True
         tree = gtk.glade.XML(self.gladefile, 'qDialog')
-        tree.get_widget('queryLabel').set_text("Are you sure you want to cancel \
project creation?") +        tree.get_widget('queryLabel').set_text(_("Are you sure \
you want to cancel project creation?"))  \
tree.get_widget('cancelbutton2').set_label("gtk-no")  \
tree.get_widget('okbutton2').set_label("gtk-yes")  dialog = \
tree.get_widget('qDialog') @@ -307,7 +294,7 @@ class App(object):
             for child in child_list:
                 if child != cur_pid:
                     os.kill(child, signal.SIGKILL)
-        print "Canceled Function was %s and cancel type was %s" % (cancelData[0], \
cancelData[1]) +        print _("Canceled Function was %s and cancel type was %s") % \
(cancelData[0], cancelData[1])  
 
     def on_new_project_clicked(self, widget):
@@ -328,20 +315,20 @@ class App(object):
             platform = dialog.platform
             path = os.path.realpath(os.path.abspath(os.path.expanduser(dialog.path)))
                
             if not dialog.name or not dialog.desc or not dialog.platform or not \
                dialog.path:
-                self.show_error_dialog("All values must be specified")
+                self.show_error_dialog(_("All values must be specified"))
                 continue
             if name in self.sdk.projects:
-                self.show_error_dialog("Project already exists with the name: %s" % \
name) +                self.show_error_dialog(_("Project already exists with the \
name: %s") % name)  continue
             # If the path specified doesn't exist yet, then that is okay.
             if not os.path.exists(path):
                 break
             if not os.path.isdir(path):
-                self.show_error_dialog("Path: %s exists but is not a directory" % \
path) +                self.show_error_dialog(_("Path: %s exists but is not a \
directory") % path)  continue
             # Make sure that the directory specified is empty
             if len(os.listdir(path)):
-                self.show_error_dialog("Path: %s is a directory which is NOT empty" \
% path) +                self.show_error_dialog(_("Path: %s is a directory which is \
NOT empty") % path)  continue
             break
         if result == gtk.RESPONSE_OK:
@@ -363,17 +350,17 @@ class App(object):
                 try:
                     proj = self.sdk.create_project(dialog.path, dialog.name, \
dialog.desc, self.sdk.platforms[platformName])  except ValueError:
-                    print "Project Creation cancelled"
+                    print _("Project Creation cancelled")
                     progress_dialog.destroy()
                     return
                 if proj.install() == False:
-                    print "Project Creation cancelled"
+                    print _("Project Creation cancelled")
                     progress_dialog.destroy()
                     try:
-                        print "Trying to cleanup"
+                        print _("Trying to cleanup")
                         self.sdk.delete_project(dialog.name)
                     except:
-                        print "could not cleanup project"
+                        print _("could not cleanup project")
                         # if the project creation failed before the list of
                         # projects has been updated, then we expect failure here
                         pass
@@ -419,7 +406,7 @@ class App(object):
     def on_projectDelete_clicked(self, event):
         """Delete a Project"""
         model, treePathList = self.projectView.get_selection().get_selected_rows()
-        deleteConfirmationText = "Delete Project(s)?\n"
+        deleteConfirmationText = _("Delete Project(s)?\n")
         for item in treePathList:
             deleteConfirmationText += " %s " % model[item][0]
         tree = gtk.glade.XML(self.gladefile, 'qDialog')
@@ -462,12 +449,12 @@ class App(object):
             dialog.destroy()
             if result == gtk.RESPONSE_OK:
                 if not target_name:
-                    self.show_error_dialog("Must specify a target name")
+                    self.show_error_dialog(_("Must specify a target name"))
                 elif target_name in self.current_project().targets:
-                    self.show_error_dialog("Target: %s already exists" % \
target_name) +                    self.show_error_dialog(_("Target: %s already \
exists") % target_name)  elif re.search(r'[^-_a-zA-Z0-9]', target_name):
                     target_name = re.sub(r'[^-_a-zA-Z0-9]', '', target_name)
-                    self.show_error_dialog("Target names can only contain \
alpha/numeric characters, hyphen and underscore") +                    \
self.show_error_dialog(_("Target names can only contain alpha/numeric characters, \
hyphen and underscore"))  else:
                     self.create_new_target(self.current_project(), target_name)
                     break
@@ -550,20 +537,20 @@ class App(object):
             iter = list.append([fset_name])
             buttonName = fset_name + "  (" + platform.fset[fset_name].desc + ")"
             self.fsetTouple.append((fset_name, gtk.CheckButton(buttonName), False, \
                0))
-            toolTipText = "<b>Depends on FSet(s):</b> "
+            toolTipText = _("<b>Depends on FSet(s):</b> ")
             for depends in sorted(platform.fset[fset_name].deps):
                 toolTipText += " %s " % depends
-            toolTipText += "\n<b>Debug Packages:</b> "
+            toolTipText += _("\n<b>Debug Packages:</b> ")
             for debug_pkgs in sorted(platform.fset[fset_name].debug_pkgs):
                 toolTipText += " %s " % debug_pkgs
-            toolTipText += "\n<b>Packages:</b> "
+            toolTipText += _("\n<b>Packages:</b> ")
             for pkgs in sorted(platform.fset[fset_name].pkgs):
                 toolTipText += " %s " % pkgs
             if self.pygtkOldVersion == False:
                 self.fsetTouple[i][1].set_tooltip_markup(toolTipText)
             i += 1
         if not iter:
-            self.show_error_dialog("Nothing available to install!")
+            self.show_error_dialog(_("Nothing available to install!"))
             dialog.destroy()
             return
         self.fsetTouple.pop(0)
@@ -581,7 +568,7 @@ class App(object):
                 for fsetName in self.fsetTouple:
                         if fsetName[2] == True:
                             numFsetsToInstall = numFsetsToInstall + 1
-                print "Number of fsets to install: %s" % numFsetsToInstall
+                print _("Number of fsets to install: %s") % numFsetsToInstall
 
                 if numFsetsToInstall != 0:
                     dialog.destroy()
@@ -590,8 +577,8 @@ class App(object):
                             fsetToInstall.append(fsetName[0])
                     break
                 else:
-                    print "No fset selected"
-                    self.show_error_dialog("Please Choose an Fset")
+                    print _("No fset selected")
+                    self.show_error_dialog(_("Please Choose an Fset"))
             else:
                 break
         dialog.destroy()
@@ -601,17 +588,17 @@ class App(object):
         platformName = self.current_project().platform.name
         fsetsToInstall, debug_pkgs = self.setup_fsets_dialog(widget, platformName)
         if fsetsToInstall:
-            print "Debug packages = %s" % debug_pkgs
+            print _("Debug packages = %s") % debug_pkgs
             platform = self.current_project().platform
             progress_tree = gtk.glade.XML(self.gladefile, 'ProgressDialog')
             progress_dialog = progress_tree.get_widget('ProgressDialog')
             progress_dialog.connect('delete_event', self.ignore)
             self.progressbar = progress_tree.get_widget('progressbar')
             for fsetName in fsetsToInstall:
-                #print "Installing: %s" % fset    
+                #print _("Installing: %s") % fset    
                 fset = platform.fset[fsetName]
-                print "Installing fset %s.................\n" % fsetName
-                progress_tree.get_widget('progress_label').set_text("Please wait \
while installing %s" % fset.name) +                print _("Installing fset \
%s.................\n") % fsetName +                \
progress_tree.get_widget('progress_label').set_text(_("Please wait while installing \
%s") % fset.name)  try:
                     self.current_target().installFset(fset, fsets = platform.fset, \
debug_pkgs = debug_pkgs)  except ValueError, e:
@@ -619,7 +606,7 @@ class App(object):
                 except:
                     traceback.print_exc()
                     if debug: print_exc_plus()
-                    self.show_error_dialog("Unexpected error: %s" % \
(sys.exc_info()[1])) +                    self.show_error_dialog(_("Unexpected error: \
%s") % (sys.exc_info()[1]))  self.redraw_target_view()
             progress_dialog.destroy()
 
@@ -627,8 +614,8 @@ class App(object):
         return True
 
     def set_status_label(self, newLabel):
-        print "Setting new status label: %s" % newLabel
-        self.statuslabel.set_text("Current action: %s" % newLabel)
+        print _("Setting new status label: %s") % newLabel
+        self.statuslabel.set_text(_("Current action: %s") % newLabel)
 
     def gui_throbber(self, process):
         self.progressbar.pulse()
@@ -643,13 +630,13 @@ class App(object):
 
     def on_delete_target_clicked(self, widget):
         model, treePathList = self.targetView.get_selection().get_selected_rows()
-        deleteConfirmationText = "Delete Target(s)?\n"
+        deleteConfirmationText = _("Delete Target(s)?\n")
         for item in treePathList:
             deleteConfirmationText += " %s " % model[item][0]
         tree = gtk.glade.XML(self.gladefile, 'qDialog')
         tree.get_widget('queryLabel').set_text(deleteConfirmationText)
         dialog = tree.get_widget('qDialog')
-        dialog.set_title("Delete Target")
+        dialog.set_title(_("Delete Target"))
         result = dialog.run()
         dialog.destroy()       
         if result == gtk.RESPONSE_OK:    
@@ -716,7 +703,7 @@ class App(object):
             self.targetList.remove(self.targetList.get_iter(item))
         self.targetView.get_selection().handler_unblock(self.targetView_handler)
 
-    def show_error_dialog(self, message="An unknown error has occurred!"):
+    def show_error_dialog(self, message= _("An unknown error has occurred!")):
         widgets = gtk.glade.XML(self.gladefile, 'error_dialog')
         widgets.get_widget('error_label').set_text(message)
         dialog = widgets.get_widget('error_dialog')
@@ -725,12 +712,12 @@ class App(object):
 
     def show_umount_error_dialog(self, directory_list = []):
         widgets = gtk.glade.XML(self.gladefile, 'error_dialog_umount')
-        #widgets.get_widget('error_label').set_text("Could not unmount the following \
directories:") +        #widgets.get_widget('error_label').set_text(_("Could not \
unmount the following directories:"))  dirTree = widgets.get_widget('umount_dirs')
         dialog = widgets.get_widget('error_dialog_umount')
         dirList = gtk.ListStore(gobject.TYPE_STRING)
         cellRenderC0 = gtk.CellRendererText()
-        col0 = gtk.TreeViewColumn("Directory List", cellRenderC0)
+        col0 = gtk.TreeViewColumn(_("Directory List"), cellRenderC0)
         dirTree.append_column(col0)
         col0.add_attribute(cellRenderC0, 'text', 0)
         col0.set_resizable(True)
@@ -746,7 +733,7 @@ class App(object):
         prompt_file = open(os.path.join(project_path, "etc/debian_chroot"), 'w')
         print >> prompt_file, "P: %s" % project_name
         prompt_file.close()
-        print "Project path: %s" % project_path
+        print _("Project path: %s") % project_path
         cmd = '/usr/bin/gnome-terminal -x /usr/sbin/chroot %s env -u SHELL \
HOME=/root su -p - &' % (project_path)  print cmd
         os.system(cmd)
@@ -759,7 +746,7 @@ class App(object):
         prompt_file = open(os.path.join(target_path, "etc/debian_chroot"), 'w')
         print >> prompt_file, "T: %s" % target.name
         prompt_file.close()
-        print "Target path: %s" % target_path
+        print _("Target path: %s") % target_path
         cmd = '/usr/bin/gnome-terminal -x /usr/sbin/chroot %s env -u SHELL \
HOME=/root su -p - &' % (target_path)  print cmd
         os.system(cmd)
@@ -791,7 +778,7 @@ class App(object):
             progress_tree = gtk.glade.XML(self.gladefile, 'ProgressDialog')
             progress_dialog = progress_tree.get_widget('ProgressDialog')
             progress_dialog.connect('delete_event', self.ignore)
-            progress_tree.get_widget('progress_label').set_text("Please wait while \
while creating %s" % img_name) +            \
progress_tree.get_widget('progress_label').set_text(_("Please wait while while \
creating %s") % img_name)  self.progressbar = progress_tree.get_widget('progressbar')
             try:
                 self.current_project().create_live_usb(target.name, img_name)
@@ -811,7 +798,7 @@ class App(object):
             progress_tree = gtk.glade.XML(self.gladefile, 'ProgressDialog')
             progress_dialog = progress_tree.get_widget('ProgressDialog')
             progress_dialog.connect('delete_event', self.ignore)
-            progress_tree.get_widget('progress_label').set_text("Please wait while \
creating %s" % img_name) +            \
progress_tree.get_widget('progress_label').set_text(_("Please wait while creating \
%s") % img_name)  self.progressbar = progress_tree.get_widget('progressbar')
             try:
                 self.current_project().create_live_usb(target.name, img_name, \
'EXT3FS') @@ -831,7 +818,7 @@ class App(object):
             progress_tree = gtk.glade.XML(self.gladefile, 'ProgressDialog')
             progress_dialog = progress_tree.get_widget('ProgressDialog')
             progress_dialog.connect('delete_event', self.ignore)
-            progress_tree.get_widget('progress_label').set_text("Please wait while \
creating %s" % img_name) +            \
progress_tree.get_widget('progress_label').set_text(_("Please wait while creating \
%s") % img_name)  self.progressbar = progress_tree.get_widget('progressbar')
             try:
                 self.current_project().create_install_usb(target.name, img_name)
@@ -853,7 +840,7 @@ class App(object):
             progress_tree = gtk.glade.XML(self.gladefile, 'ProgressDialog')
             progress_dialog = progress_tree.get_widget('ProgressDialog')
             progress_dialog.connect('delete_event', self.ignore)
-            progress_tree.get_widget('progress_label').set_text("Please wait while \
creating %s" % img_name) +            \
progress_tree.get_widget('progress_label').set_text(_("Please wait while creating \
%s") % img_name)  self.progressbar = progress_tree.get_widget('progressbar')
             try:
                 self.current_project().create_live_iso(target.name, img_name)
@@ -895,12 +882,12 @@ class App(object):
         result = dialog.run()
         if result == gtk.RESPONSE_CANCEL:
             dialog.destroy()
-            print "No target image selected!"
+            print _("No target image selected!")
             return False
         elif result == gtk.RESPONSE_OK:
             image_filename = dialog.get_filename()
             dialog.destroy()
-            print "Selected file name: %s " % image_filename
+            print _("Selected file name: %s ") % image_filename
             widgets = gtk.glade.XML(self.gladefile, 'select_usb_disk_dialog')
             dialog2 = widgets.get_widget('select_usb_disk_dialog')
             usb_dev_list = gtk.ListStore(gobject.TYPE_STRING)
@@ -922,7 +909,7 @@ class App(object):
             return_code = False
             if result == gtk.RESPONSE_CANCEL:
                 dialog2.destroy()
-                print "No USB device selected!"
+                print _("No USB device selected!")
             elif result == gtk.RESPONSE_OK:
                 model, iter = usb_disks.get_selection().get_selected()
                 dialog2.destroy()
@@ -930,26 +917,26 @@ class App(object):
                     self.show_error_dialog('No USB disk selected!')
                 else:
                     usb_disk = model[iter][0]
-                    print "Selected USB disk %s" % usb_disk
+                    print _("Selected USB disk %s") % usb_disk
                     if not pdk_utils.umount_device(usb_disk):
-                        self.show_error_dialog("Can not umount %s. Please close any \
shells or opened files still under mount point and try again!" % usb_disk) +          \
self.show_error_dialog(_("Can not umount %s. Please close any shells or opened files \
still under mount point and try again!") % usb_disk)  return_code = False
                     else:
_______________________________________________
Commits mailing list
Commits@moblin.org
https://www.moblin.org/mailman/listinfo/commits


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic