Translating postmarketOS

As postmarketOS becomes more and more stable, it makes sense to make it more accessible for non-developers. An important part of that are translations and localization.
== Localization in postmarketOS ==
postmarketOS has general support for translations into many languages, mostly through upstream projects. The translations are available by default when installed through pre-built images, or when using pmbootstrap and selecting any locale but the C locale. If you have an older installation without translations, you can get them by installing the lang package. You might also have to select your language in the settings app of your UI. postmarketOS-specific apps and UI-facing components do not have translations. Most of them should at some point be merged into upstream projects. For the ones that don't, and which are not development tools, translations might at some point be added.
However, even for languages with translations available, the libc used by postmarketOS, musl, does not have a full set of features related to localization (like comma for marking decimal point in some languages). There is some work-in-progress to improve the situation. In addition, even if the UI does have support for your language, musl might not. This often becomes obvious by getting the complete UI translated, but dates, months, and days still being in English. In such case, if you are a native speaker of the language, we and the musl project would highly appreciate your contribution.
=== Adding support for your language in musl ===
TODO
If you identify any issue that should be working but is not, or want to help with these tasks, let us know in the issues or in Matrix_and_IRC.
== Development tools and homepage ==
It is not very useful to translate development tools such as pmbootstrap. In order to use them, you need to read a lot of English documentation anyways. In fact, translating these will make development harder, as you suddenly can't search the Internet for specific output that pmbootstrap throws at you - you need to turn off translations first, or you won't get useful results. Let's rather focus on the parts that end-users will be facing.
Translating the homepage doesn't make sense at this point either. It is a lot of effort, which could be spent translating the actual user interfaces instead, and becomes outdated quickly. Besides that, there is technical effort required to make the homepage translatable in the first place. If you are interested in providing information about postmarketOS in a specific language, consider contributing to the postmarketOS Wikipedia page of that language.
== Upstream projects ==
Pretty much everything that an end-user sees needs to be translated in an upstream project. Here are some pointers, note that GNOME and KDE are big projects consisting of many components, and that only a few of these components are actually relevant for postmarketOS. So if you plan to improve or add support for a certain language, think about the tasks that a casual postmarketOS user would typically perform with the OS. Then look into the translations of the components that make these tasks possible. If you do so, please add more bullet points with the specific components to be translated.
* KDE Localization (Plasma Mobile UI and apps)
* GNOME Translation Project (GNOME, GNOME Mobile and Phosh UIs and apps)
** Librem 5 Translation Docs
== Related ==
* Default file sorting
Category:Guide