Difference between revisions of "Developer Area/Language Packs/Launchpad Migration"

From Mahara Wiki
Jump to: navigation, search
(Update the Last-Translator line in each .po file)
(Update the master language pack location)
Line 74: Line 74:
  
 
In mahara-scripts/mahara-langpacks/language-repos.txt, change the location for each language you imported to launchpad from gitorious to lp:mahara-lang.  The langpack list at http://langpacks.mahara.org will start pulling from launchpad instead of gitorious.
 
In mahara-scripts/mahara-langpacks/language-repos.txt, change the location for each language you imported to launchpad from gitorious to lp:mahara-lang.  The langpack list at http://langpacks.mahara.org will start pulling from launchpad instead of gitorious.
 +
 +
If you are starting a new translation in launchpad, hold off on updating this file until the translation is complete enough to be useful to someone, or users will waste time downloading and installing language packs with only a few translated strings.

Revision as of 13:53, 22 March 2012

Steps required to do a one-off language pack migration from gitorious to launchpad

Convert the existing language pack to a .po file

This should be done on a language-by-language basis for all branches (1.3, 1.4, and master) because it's not possible to have some branches using gitorious and others using launchpad.

Use the script mahara-langpacks/update-po.sh in the mahara-scripts repository. You probably want to change the directory locations near the top, and you definitely want to change the list of languages.

Update the Last-Translator line in each .po file

"Last-Translator: Gregor Anželj <gregor.anzelj@gmail.com>\n"

If you don't include an email address on this line, you (as the uploader) will be credited as the translator after it's uploaded to Launchpad.

Get the most up to date .pot templates from launchpad

You need one mahara.pot for each branch. You can find them on these bzr branches:

Create a tarball for each branch

Put all the files in a mahara directory, and rename the .po files to just sl.po, etc., so you now have 3 tarballs, named something like master.tar.gz, 14stable.tar.gz and 13stable.tar.gz, each containing:

mahara/mahara.pot
mahara/sl.po

You can upload individual .po files rather than tarballs, but don't. It seems to take forever for them to be imported, possibly because it requires human approval.

Upload the tarballs

Starting here, you need to be a direct member of the mahara-lang team.

Each branch has its own upload page:

All the files should now be visible on the import queue.

After 24 hours the translations should have been imported into launchpad and should be visible.

Make the Gitorious repo read-only

Once the translation has been moved to Launchpad, disable commits on the old Gitorious repo:

  • Remove all external people from the repo.
  • Leave mahara-core with permissions to administer the repo, but remove "commit" and "review".

Create a translation team

Go to the Translation group at https://translations.launchpad.net/+groups/mahara-translation-group

Ideally, get the Mahara translators to join the general Launchpad translation groups for their languages. For example:

If the Mahara translators are unable to join them, then:

  • only one translator:
  1. just add their launchpad user as the Team on that page
  • multiple translators:
  1. create a regular Launchpad team with a name like mahara-lang-es
  2. change the team's owner to mahara-reviewers
  3. remove yourself from the list of active members
  4. add each translator's launchpad user as a member of the team
  5. go back to the Translation group and add the team as the maintainer.

Update the master language pack location

In mahara-scripts/mahara-langpacks/language-repos.txt, change the location for each language you imported to launchpad from gitorious to lp:mahara-lang. The langpack list at http://langpacks.mahara.org will start pulling from launchpad instead of gitorious.

If you are starting a new translation in launchpad, hold off on updating this file until the translation is complete enough to be useful to someone, or users will waste time downloading and installing language packs with only a few translated strings.