Android l10n tooling
This repository hosts code to create and maintain the android-l10n repository.
It provides both cross-product and cross-branch strings, joining the
strings in several
strings.xml files from different repositories and
The best way to run this is to create the docker image, and run the process inside a docker container.
docker build -t android-l10n-tooling .
This is the process to transfer strings from the Android project repositories
android-l10n strings-only repository.
Outside of the container, you want to have the
There you should make manual git changes, like changes to the
file. That way, you don't need to set up your git identity inside the container.
android-components as an example on how to update the quarantine
branch of an Android project. Adjust the organization and repository name to
match the project you're actually working on. Here are the steps, first, fire
up the container.
docker run --rm -it -v /src/experiments/android-l10n:/workdir/android-l10n android-l10n-tooling bash
Make sure to adjust the path to your
android-l10n repository you have on
Then, inside the container, run:
create-l10n-branch --pull --repo mozilla-mobile/android-components --branch android-components-quarantine android-l10n/
This should pull a new clone of
android-components in your container, and
android-l10n repository on your machine. It will create or
If you'd like to check the result of the conversion for a local repository
state of yours, you want to modify the
config.toml, and mount
your local clone to
/workdir/mozilla-mobile/android-components when starting
the docker container.
This is the process to get strings from the
repository back into the Android project repositories. These commands
are run in the same docker container as for exporting.
Outside of the container, you want to have your project repository, and
mount that while running the command. Same goes for the
Then, inside the container, you run
import-android-l10n android-l10n/mozilla-mobile/android-components/l10n.toml mozilla-mobile/android-components
The first argument is the
l10n.toml for the project as it lives inside
android-l10n. The second argument is the path to the local checkout of the
This command doesn't do anything related to git, so you want to check out a git branch before running it, and add/commit afterwards.