** Attachment added: "ubuapp.pot"
   
https://bugs.launchpad.net/ubuntu/+source/quickly/+bug/1003818/+attachment/3170816/+files/ubuapp.pot

** Description changed:

  [Impact]
  
  The commands 'quickly package --extras' and 'quickly submitubuntu' do
  not create debian packages that can load their shipped translations.
  
  So those two commands which are used for ARB submission, will regress
  translation support compared to normal packages.  Since we want to
  encourage ARB submission where appropriate, having such a bug would be
  unfortunate.
  
  [Test Case]
  
  cd /tmp
  quickly create ubuntu-application ubuapp
  # close opened window
  cd ubuapp
  mkdir po
- # Download my attached files and put them into po/
+ # Download the attached files 'fr.po', 'POTFILES.in', and 'ubuapp.pot' and 
put them into po/
  quickly package --extras
  sudo dpkg -i ../ubuapp_0.1_all.deb
  sudo apt-get install language-pack-fr # to create locale
  # on 12.04, this is the binary path
  LANGUAGE=fr /opt/extras.ubuntu.com/ubuapp/ubuapp/ubuapp
  # in my fixed version, this will be the binary path
  #LANGUAGE=fr /opt/extras.ubuntu.com/ubuapp/bin/ubuapp
  
  Notice that the title will be "Ubuapp" in the unfixed version. But will
  be "French Ubuapp" in my fixed version.
  
  [Regression Potential]
  
  My fix carefully only affects the --extras path (which is also used for
  submitubuntu). I intentionally chose an ugly way to fix this so that I
  could only affect that path and not regress anything else.
  
  In 12.10, my hope is to eventually implement a non-ugly fix. But I'm
  confident this will only affect users of --extras.
  
  [Original Report]
  
  Both 'quickly package --extras' and 'quickly submitubuntu' correctly
  install translations for applications in
  /opt/extras.ubuntu.com/appname/share/locale.
  
  However, there is an additional step required to make applications to
  actually use those translations at runtime: use the bindtextdomain()
  call to specify that they should be loaded from /opt instead of
  /usr/share/locale.
  
  Quickly's gettext setup is originally:
  
  import gettext
  from gettext import gettext as_
  gettext.textdomain('appname')
  
  And this should be changed to the following for apps in extras:
  
  TEXTDOMAIN = 'appname'
  LOCALEDIR = '/opt/extras.ubuntu.com/appname/share/locale'
  import locale
  from locale import gettext as _
  locale.bindtextdomain(TEXTDOMAIN, LOCALEDIR)
  locale.textdomain(TEXTDOMAIN)
  
  Notice the use of the locale module (Python's C gettext API) instead of
  the gettext module (pure Python gettext API). This is needed to make
  Gtk.Builder() load translations in /opt.
  
  I wonder whether the gettext initialization could be moved to a single
  place/module, rather than added to each .py file as it is done now. This
  would probably help if the implementation of 'quickly package --extras'
  or 'quickly submitubuntu' would rely on adding a patch to modify those
  lines of code or simply do text substitution.
  
  This still does not take care of the translations for schemas and
  PolicyKit files in /opt (they should be filed as separate bugs), but at
  least gets us 90% there in being able to run localized apps from /opt
  
  See more details on http://askubuntu.com/questions/140552/how-to-make-
  glade-load-translations-from-opt
  
  ProblemType: Bug
  DistroRelease: Ubuntu 12.04
  Package: quickly 12.04-0ubuntu1
  ProcVersionSignature: Ubuntu 3.2.0-24.37-generic 3.2.14
  Uname: Linux 3.2.0-24-generic x86_64
  NonfreeKernelModules: nvidia
  ApportVersion: 2.0.1-0ubuntu7
  Architecture: amd64
  Date: Wed May 23 23:35:20 2012
  EcryptfsInUse: Yes
  InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Alpha amd64 (20110319)
  PackageArchitecture: all
  QuicklyDataPath: /usr/share/quickly
  QuicklyTemplates:
   /home/dpm/quickly-templates/ubuntu-application-qt
   /usr/share/quickly/templates/unity-lens
   /usr/share/quickly/templates/ubuntu-application
   /usr/share/quickly/templates/ubuntu-flash-game
   /usr/share/quickly/templates/ubuntu-cli
  QuicklyTemplatesDirectories:
   /home/dpm/quickly-templates
   /usr/share/quickly/templates/
  SourcePackage: quickly
  UpgradeStatus: No upgrade log present (probably fresh install)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1003818

Title:
  Translations are not loaded when packaging for extras

To manage notifications about this bug go to:
https://bugs.launchpad.net/quickly/+bug/1003818/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to