Service/translate: Difference between revisions
No edit summary |
|||
(13 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
{{Obsolete | Replaced by [[ Service/Weblate]]}} | |||
== Hostnames == | == Hostnames == | ||
* http://translate.sugarlabs.org/ | * http://translate.sugarlabs.org/ | ||
== Hosted on == | == Hosted on == | ||
[[Machine | [[Machine/pootle]] | ||
== Administrative contact == | == Administrative contact == | ||
Line 20: | Line 17: | ||
For non-emergency calls, preferably send email to the administrative contact. | For non-emergency calls, preferably send email to the administrative contact. | ||
* [[User: | * [[User:Sebastian|Sebastian Silva]] has assumed maintainership tasks | ||
* [[User:Cjl|Chris Leonard]] has Pootle administrator privs | * [[User:Cjl|Chris Leonard]] has Pootle administrator privs, and heads the localization efforts. | ||
* [[User:Bernie|Bernie Innocenti]] has system admin and Pootle administrator privs, but takes care only of OS-level administration. | * [[User:Bernie|Bernie Innocenti]] has system admin and Pootle administrator privs, but takes care only of OS-level administration. | ||
* [[User:SayaminduDasgupta|Sayamindu Dasgupta]] is the former admin. He still has an emeritus sysadmin account and he can be very helpful if contacted by email. | |||
== Language Administrators == | == Language Administrators == | ||
Line 51: | Line 47: | ||
{{Code|/etc/apache2/sites-enabled/000-default}}<br> | {{Code|/etc/apache2/sites-enabled/000-default}}<br> | ||
{{Code|/etc/cron.d/pootle}}<br> | {{Code|/etc/cron.d/pootle}}<br> | ||
{{Code|/var/www/pootle/sugarlabs/pootle.conf}}<br> | |||
|- | |- | ||
!scope="row" | Ports | !scope="row" | Ports | ||
Line 67: | Line 64: | ||
== Mantainance Notes == | == Mantainance Notes == | ||
Pootle in Sugar is maintained. ( | Pootle in Sugar is maintained. (icarito has step-up to be maint) | ||
== Migrated to Pootle 2.5.0 == | |||
Notes on the process were recorded here: [[Service/translate/Pootle2.5]] | |||
== Files == | == Files == | ||
Line 117: | Line 112: | ||
sudo -u pootle -i python maintenance/helpers/admin/pootlepopulator.py ''pootle-project'' ''git-clone-url'' ''pootle-filename-wo-po-suffix'' ''git-branch'' | sudo -u pootle -i python maintenance/helpers/admin/pootlepopulator.py ''pootle-project'' ''git-clone-url'' ''pootle-filename-wo-po-suffix'' ''git-branch'' | ||
Example: | |||
To checkout the sugar in the branch sucrose-0.94 (in pootle is in the project glucose94) we sshould do: | |||
cd /var/lib/pootle/ | |||
sudo -u pootle -i python maintenance/helpers/admin/pootlepopulator.py glucose94 gitorious@git.sugarlabs.org:sugar/mainline.git sugar sucrose-0.94 | |||
* Add new sections to the [[#Files|project_list.ini]] file to describe new {{Code|.pot}} locations; | * Add new sections to the [[#Files|project_list.ini]] file to describe new {{Code|.pot}} locations; | ||
Line 124: | Line 126: | ||
=== Adding activities === | === Adding activities === | ||
Before registering new activity on http://translate.sugarlabs.org, make sure that: | |||
* | * New activity is being hosted on http://git.sugarlabs.org; | ||
* The {{Code|pootle}} user was added to the repository with commit access rights; | |||
* You have a proper {{Code|GIT_URL}} to clone repository from with commit permissions, e.g., {{Code|gitorious@git.sugarlabs.org:cartoon-builder/mainline.git}}; that might be found on home page in Gitorious, e.g., http://git.sugarlabs.org/cartoon-builder, in ''Clone & push urls'' field with selector ''SSH''; | |||
* You know the proper {{Code|CATEGORY}} name to register the project in; | |||
* There is an unique {{Code|NAME}} of activity, this name will be used as a name of project in Pootle and directory name; | |||
* You know the proper {{Code|BRANCH}} in Git repository to use for translation; by default, it is {{Code|master}}. | |||
To process the registration, login to translate.sugarlabs.org and enter: | |||
sudo -u pootle python /var/lib/pootle/maintenance/helpers/admin/pootlepopulator.py ''<CATEGORY>'' ''<GIT_URL>'' /var/lib/pootle/checkouts/''<CATEGORY>''/''<NAME>'' [''<BRANCH>''] | |||
After that, for [http://git.sugarlabs.org/pootle-helpers pootle-helper] project in {{Code|potupdater/project_list.ini}}, add the following strings: | |||
[/var/lib/pootle/checkouts/''<CATEGORY>''/''<NAME>''/po/''<.pot-filename>''] | |||
project = ''<NAME>'' | |||
vcs = git | |||
method = bundlebuilder | |||
layout = gnu | |||
Commit new changes, and pull from on pootle VM: | |||
(cd /var/lib/pootle/maintenance/helpers; sudo -u pootle git pull origin master) | |||
Do ''update from templates'' on the ''templates'' project on Pootle's frontend. And wait until daily cron job will populate languages for newly registered project, or run it immediately: | |||
sudo -u pootle python /var/lib/pootle/maintenance/helpers/admin/add_langs.py | |||
Then your activity must be in place to be translated and ''commit to VCS/update from VCS'' links must be activated. | |||
=== Working with git in the pootle server === | === Working with git in the pootle server === | ||
Line 185: | Line 193: | ||
Already up-to-date. or | Already up-to-date. or | ||
####### Checking POT for Write (master) ###### | ####### Checking POT for Write (master) ###### | ||
=== Etoys .pot update === | |||
Go to Etoys translation directory (that is svn checkout from upstream project): | |||
su - pootle | |||
cd ~/translations/etoys_new | |||
Since there is no need in changing .pot files on Pootle level, revert local changes if they present: | |||
svn revert templates/*.pot | |||
Fetch new update from the upstream: | |||
svn up templates | |||
=== Tips === | === Tips === |