Fedora Localization Guide (UNDER CONSTRUCTION)
Introduction
This guide is a fast, simple, step-by-step set of instructions for translating Fedora Project software and documents. You may find some FAQ at the end of the page.
The website of the Fedora Localization Project is https://fedora.transifex.net/.
Getting Help
If you have questions, post them on the trans mailing list, or ask for help via Internet Relay Chat (IRC), at irc.freenode.org on channel #fedora-l10n.
You can find a lot of information on Transifex at: http://help.transifex.net/.
Becoming a Fedora Translator
To get started you need to register and be granted access to the material to work on:
- Create a Transifex account
- Subscribe to the mailing list
- Introduce yourself
- Join your Fedora translation team
Your self-introduction is important. It raises your chances to be approved for write access. You may also want to create a Bugzilla account to work on bugs reported by users.
Start using Transifex
Fedora uses Transifex to manage its localization workflow. These steps will guide you through the creation of a Transifex account and joining your team.
Create a Transifex Account
- Visit https://fedora.transifex.net/ and click on the top-right corner "Register"
- Fill-in the form and click Register! You can use your Fedora email or the same email you used to create your Fedora account. Choose a good password (as described above). This password can be resetted if you forget it, though.
- Check your email. An email should arrive soon to verify your email address. There will be a link in it — click it!
- You should be able to login on Transifex with your credentials now.
Joining your Fedora translation team
- Visit the Fedora Teams page at https://www.transifex.net/projects/p/fedora/teams/.
- If your language is there, click on it.
- You should see a list of the members, the leader (coordinator). Click "Join this team" to ask to join the team.
- The team leader will receive a notification about your request. He will check your information, and check whether you introduced yourself.
- If all goes well, the maintainer will accept your application, and you'll receive a notification.
This may take between a few hours or days. If takes more, click on the maintainer's username on Transifex and send him a message asking him for more information.
Subscribe to the Mailing List
- Visit trans and subscribe to the main translation mailing list.
- Wait for the confirmation email which contains a link to confirm your subscription. Click the link to confirm your subscription.
Check https://fedoraproject.org/wiki/L10N/Teams to see if there is a special mailing list for your language. If so, subscribe to that list too.
Introduce Yourself
- Create a personal page at https://fedoraproject.org/wiki/User:Username. This is very useful for Fedora contributors to get to know and contact each other. You'll need to create a Fedora account for that.
- Post a short self introduction to the trans mailing list and to the list of your local team with instructions from https://fedoraproject.org/wiki/L10N_Self_introduction. Please remember to include your FAS user name and your language. With this information, your language leader can identify you and approve you as a translator on his team.
Creating a Bugzilla Account
If you are asked to use Bugzilla, create an account by visiting https://bugzilla.redhat.com/bugzilla/createaccount.cgi.
Create a Fedora Account
The steps below guide you through the creation of a Fedora Account.
Applying for an Account
- To sign up for a Fedora account, first visit https://admin.fedoraproject.org/accounts and select New Account.
- Fill in Username, Full Name and Email, and click Sign up!. Your password will be emailed to you.
- Go back to https://admin.fedoraproject.org/accounts and log in with your password. The welcome page will be displayed, and it reminds you that CLA is not completed.
- Telephone Number and Postal Address fields are also required to fill in for signing the CLA. These information is NOT accessible by others except admin groups. Please refer to Fedora Privacy Policy at https://fedoraproject.org/wiki/Legal:PrivacyPolicy.
- Other fields will be displayed by any other member by visiting the user's view page.
- Now click Save! located at the bottom of this page to save your information.
Signing the CLA
You must complete the Contributors License Agreement, or CLA.
- Visit https://admin.fedoraproject.org/accounts and login your account using your user name and password obtained from the previous process.
- In the Welcome page, click complete the CLA or go to https://admin.fedoraproject.org/accounts/user/edit.
- If the information of telephone number and postal address have not been provided yet, the Edit Account (user_name) page will be appeared. Otherwise Fedora Contributor License Agreement page will be displayed. Read through the agreement carefully and click I agree if you are happy to do so.
- The user-view page is appeared and shows the CLA: field as CLA Done.
Translating
The translatable part of a software package is available in one or more PO files. Some projects might use other file formats as well, such as QT TS ones. These files may be maintained in any of a number of version control systems (VCSs) depending on the project, such as Subversion, Mercurial, and git. They may be hosted on either fedorahosted.org or other systems.
This chapter explains how to translate the projects which use Transifex to manage their L10n workflow. Translators can work on the web interface or the command-line to obtain and submit files. Before you start, you must first prepare the directories which hold your po files.
Listing Translatable Fedora Projects
- Visit https://www.transifex.net/projects/p/fedora/.
- Choose the type of Fedora Projects you want to translate by choosing the appropriate Release. You should see Fedora itself, Fedora Documentation and other upstream projects. Click on the release you choose to contribute to. For example, click on the link pointing to https://www.transifex.net/projects/p/fedora/r/fedora-15/l/ja/.
- The new page shows the full statistics for this release per language. Choose your language.
- This page shows all translatable resources (ie. files) for this release. Click on one of the table rows to get information on the resource you're interested in.
You can bookmark this page for future reference. We'll call it the "Language-Release" page from now on. Here's an example URL:
https://www.transifex.net/projects/p/fedora/r/fedora-15/l/ja/
Translate Online
The easiest way to translate is by using the Transifex Web Editor. It's an intuitive interface which does not require you to download files on your system and re-upload them back.
- Follow the instructions above to locate the resource which interests you.
- On the popup, you should see a "Translate Now" button. If you are logged-in on Transifex and a member of the language team, it should be clickable. Click it!
- You should now be in the Transifex Web editor (codenamed Lotte). Go on and translate as much as you want, and at the end, click "Save and Exit".
Note: When you translate online, the file is automatically "Locked" and other people are notified about your work. Never translate something that another translator has already locked -- you might be overwriting his own work!
Translating Offline
If you prefer to translate offline, you can simply download & upload a translation file.
Before you download any files, we suggest you prepare a directory to hold your files. The described structure below is an example only, and your structure can be formed differently.
mkdir -p ~/fedora-translations/
Obtaining and Translating Projects
You can download a file to translate. You may need to communicate with other translators in your language team to avoid conflict. If you are not sure, please contact your language coordinator. Also locking a file will avoid potential conflicts.
- On your Release-Language page find the resource (table row) you want to translate and click on it for the popup to appear.
- Click on "Download for translation" button to download the file as the name of your choice to the directory you created in the previous section (e.g. abrt.po).
- Now the file is on your local workstation and ready for translation. Translate the file into your language eg. with a POeditor of your choice such as Lokalize or gtranslator.
- Check the integrity of your file before commit using
msgfmt -cvo /dev/null abrt.po
. If any error messages appear, correct it before commit.
Please note that all files offered from Transifex are already merged (msgmerged) with the POT files. This happens both when you download and when you upload files.
Committing Projects
Once you finish translation work, commit the file using the same interface.
- Make sure you are logged in on Transifex.
- Navigate back to your Release-Language page and click on the resource you want to upload to. Be careful not to upload on a different resource.
- Click on the "Upload" button and locate your translated file on your local system, and Submit it. The interface might take some time (for large files up to one minute) and finally notify you that the file was submitted successfully. If you receive an error or some other message, please post it to the Fedora Localization Project mailing list so it can be addressed.
Adding New files
If one of the resources in the release is missing your translation, you should see it missing from the release page, and see a separate list at the bottom of the page as follows:
The following resources don't have any translations in Japanese: 1) python-fedora → python-fedora.pot
- Click on it -- it will take you to that resource's main page.
- Click "Add Translation"
- Choose your language and click "Translate Online".
- Go ahead and translate online a few or all the strings, and then "Save and Exit".
Proofreading Software Translations
Since Fedora 12, the composed live image has been available to download for reviewing and correcting software translation in user interface. This live image is composed around a week before Fedora Software Translation Deadline and made available by deadline date. This image should include all latest translation submitted at this point.
To proofread your translation as part of the software, follow these steps:
1. Change directory to the package you want to proofread. For example:
cd ~/myproject/system-config-printer/
2. Convert the po file to a mo file using msgfmt with -o option:
msgfmt -o system-config-printer.mo ja.po
3. Back up the existing file and overwrite old one.
su - cp /usr/share/locale/ja/LC_MESSAGES/system-config-printer.mo system-config-printer.mo-backup mv system-config-printer.mo /usr/share/locale/ja/LC_MESSAGES/ exit
4. Proofread the package with the translated strings as part of the application. The application related to the translated package runs with the translated strings.
LANG=ja_JP.UTF-8 system-config-printer
Translating Documentation
Translating Fedora docs is exactly the same as translating software, so just follow the same instructions as above. Make sure you select the "Fedora Documentation" Release, which will lead you to a separate Release-Language page, specialized in Docs.
Example:
https://fedora.transifex.net/projects/p/fedora/r/fedora-docs/
Understanding the Multiple Files Structure
Fedora Docs mostly use Publican. Unlike software, a guide has multiple po files structure. Each file corresponds to each chapter in that guide. The file name usually consists of the chapter name. This structure is very useful as more than one translator can work on certain guide same time.
New languages: Creating docbook-locales File
If you are creating the first-ever translation for a locale, you must first translate docbook-locales file used in all documents for your locale.
- Navigate to the docbook-locales Transifex project: https://www.transifex.net/projects/p/fedora-docbook-locales/resource/locale/
- If your language is not there, just add it.
- File a bug in Bugzilla against Product "Fedora Documentation" with Component "docs-requests". You may leave the details blank, or name the guide name(s) which you like to translate. Attach Files if Necessary. If you have any problems submitting po files using above instructions, you can attach it to the bug.
- Use the following Summary on the bug: "[ja]: New language support request."
Publishing Docs
When your doc translation is ready to be published on the Fedora Documentation website, make a formal request for publishing the translation by following these steps:
- File a bug against the publishing-requests component of the Fedora Documentation product in Bugzilla. In the description field, remember to mention the document name and language version you want to publish. If you wish to publish multiple documents at once, file a separate bug for each of the documents.
- Members of the docs-publishers FAS group will be notified of your request and will get your translation published. Once the translation gets published, they will close the bug for you.
What Docs to Translate
The most important documentation for each release of Fedora are the following:
- docbook-locales
- Common Content for Publican
- Publican branding for Fedora
- Documentation website
- Release Notes
- Burning ISOs
- Live Image
For a full list of Fedora docs available for translation, refer to the Docs Project guides table.
Translating Websites
Fedora Websites are also translatable via Transifex. You can find all projects related to Fedora websites in the Fedora Websites Release:
https://www.transifex.net/projects/p/fedora/r/fedora-websites/
Download, translate, and commit website projects the same way as for software projects. Please note that new translations are pulled times to times. It could be daily or weekly, depending on the release state. If you notice that your translation is not updated for a while, you could ask an update from the website team on their mailing list. By adding the L10n mailing list in CC you will tell other teams that you've already requested an update.
Adding New po Files
Add new po files the same as for software projects. If you are creating the first-ever translation for a locale, you must notify the Fedora Websites team to add the new language to the website. Post the request to the trans mailing list, so that the Websites team can add the language to the Apache configuration for the site.
Proofreading
Generally the Websites team provides test sites that you can use to proofread your work.
Translating Wiki Pages
Please refer to Translating page to see the details of translating the wiki pages.
FAQ (Frequently Asked Questions)
Here are some FAQs about the Localization Project.
Should I translate legal notices?
No. You must never do that. The exact wording of the legal notices is very important and a translation not approved by lawyers is very risky. Red Hat is the legal representative and primary sponsor of the Fedora Project and does not have the resources to cross check every single translation. Just leave the original English notice in tact when it covers legal matters.
How do I report issues?
Before reporting (either opening a new ticket or the list), please search to see if there's an existing report opened. It sometimes help to ask in #fedora-l10n if there's a known issue at that exact moment. If not, please open a ticket describing what's wrong with the service in clarity. Include the nature of the problem, the project/resource, the time (in UTC) it happened and your Fedora username. If you suspect it might be a problem with the particular file you are uploading or the target file, include that information as well.
Where do I report issues?
- Issues specific to Transifex should be reported using the "Feedback" button on the right-side of the website.
- These include: Questions related to Transifex, possible bugs, feature requests, problems you are having with the site, such as a slow webpage, login issues.
- These do not include missing Fedora projects, Fedora team creation requests, Fedora coordinators etc.
- Issues specific to Fedora L10n should be first reported on IRC (#fedora-l10n) and then on the trans- mailing list.
- These include team questions, releases, projects, Fedora maintainers, developers etc.
- These do NOT include questions Transifex bugs, feature requests, problems you are having with the site, such as a slow webpage, login issues, or wrong statistics because a project is missing from the release.
Where do I report feature requests?
Please see above section, 'issues specific to Transifex'.
How do I create a new team? (#new-team)
See L10N Maintainer on how to become a maintainer of a new language.
My file is 100% but when I test the application I still see English strings! (#missing-strings)
This wasn't a question, by the way. Nevermind. The following might have gone wrong:
- The strings in question have not been marked for translation by the developer, hence they haven't been included in the POT file, and thus not in the PO file. He needs to use gettext on them.
- The source files of these strings have not been marked for inclusion, in the intltool case.
- The POT file of Transifex is not up to date. The component page includes the date when the POT file has been produced. If this is more than a few hours in the past, please notify the admins, otherwise it should be OK.
Are the statistics live? How often are they updated? (#update-frequency)
The statistics on Transifex are always live on the project pages. The Release pages are updated once per day.
How do I add a module to Transifex? (#add-transifex)
- Navigate to https://www.transifex.net/projects/add/
- Follow the instructions from http://help.transifex.net/intro/projects.html
If you want the Fedora Localization Project to handle your translations (i.e. you are NOT an upstream project):
- Click 'Access Control' on your Project Details Page
- Outsource team control to "The Fedora Project"
- Send an email to fedora-trans-list and let the contributors know about the change. One of the Fedora L10n Editors will add your project to one of the Fedora releases.
Here are two more pages you might want to read:
- http://lists.fedoraproject.org/pipermail/trans/2011-January/008573.html
- http://lists.fedoraproject.org/pipermail/docs/2011-February/013109.html
I'm a developer, how can I make .desktop files translatable?
Transifex will natively support .desktop files soon.
I can't find "About this Computer" string. Where is it?
It can be found at AboutThisComputer.
Is the section of export regulations shown at the bottom of the fedoraproject.org/get-fedora page translatable?
No. This is purposely set up as non-translatable. Please refer to Non-translatable export regulations?.
If some strings change past string freeze, how do I request a string freeze breakage?
Email the trans mailing list!
What if I overwrite a wrong file?
If you have overwritten a wrong file in your own locale, try to find the old file on the developer's git repo (http://git.fedorahosted.org/git/) and replace the wrongly updated file with this file.
Even though these are measures to correct mistake, we strongly advice you to take extra care while submitting the translations via Transifex and make sure that you are uploading file in proper location under proper locale because some projects don't keep translation files under their CVS tree (do I say "Anaconda" ? oO)
I'm from the Docs Project. How do I make my Guide / Release Notes / other document available for translation?
If you keep you document in a git repository, see Setting up a document with Transifex to find out how to make it available to translators on Transifex.net.
Guide information
The following people have contributed to this guide:
- Manuel Ospina
- Paul W. Frields
- Noriko Mizumoto
- Dimitris Glezos
- Diego Búrigo Zacarão
- Piotr Drąg
- Misha Shnurapet
- Petr Kovar