Localisation

For Localisers/Translators

Translation status

Portmod’s internationalization is handled using Project Fluent.

Weblate

Localisation can be done using Portmod’s Weblate Project.

Pontoon (Deprecated)

Localisation can also be done using our Pontoon instance: https://portmod-l10n.herokuapp.com/projects/portmod/. A GitLab account is necessary for authentication, but no further signup is necessary. Just log-in with your GitLab account and start localising.

If a language you would like to localise has not yet been set up in Pontoon, you can request that it be added by contacting the Portmod developers, either via opening an issue, via matrix or email (see the README for up to date communication information).

Pontoon has better support for Fluent than Weblate, however our Pontoon instance cannot send email notifications, and Weblate provides access to a larger community of software translators.

For Portmod Developers

Text displayed to the user should be output using the portmodlib.l10n:l10n function, and added to the source localisation file l10n/en-GB/main.ftl.

Also see Good Practices for Developers

Internally, the localisation is done using fluent-rs and compiled into portmod’s rust extension. The localisations themselves are also compiled into the rust extension, so after adding localisations it is also necessary to either rebuild the rust extension or to build the extension in debug mode where it will read the files directly from the filesystem at runtime (see Developer Setup for Portmod).