The Debian Description Translation Project — DDTP

The Debian Description Translation Project (which was implemented by Michael Bramer) aims to provide translated package descriptions and the infrastructure to support their translation. Even though it has been around for a few years, it was deactivated after a break-in of a Debian host and at the moment only basic functionality are available, compared to the past.

The project supports:

At the moment, decriptions of packages in non-free and non-free-firmware sections of the Debian archive are not translatable because there could exist license issues forbidding it and the situation must be evaluated carefully.

Translating more than 71000 package descriptions is a big challenge. Please help us to fulfill our goal. All translation teams search new translators and reviewers which help to process the really large package list. See also the issues on Salsa to find out how you can improve th DDTP itself, or add your own ideas and suggestions.

Interfaces to the DDTP

Since all interfaces use the DDTP backend, you first need to make sure that your language is already supported. This should be the case for most languages. If it isn't, ask for it with an email to debian-i18n@lists.debian.org or an issue on Salsa.

The web frontend

There is a nice web frontend called DDTSS, written by Martijn van Oosterhout, which tries to simplify the task of translation and review.

Overview

It supports contributing translations and allows proofreading. It supports a custom configuration for each language team so that each team can decide how many reviews are necessary before the description is transferred to the DDTP. It's also possible to request user authorisation, so that only a restricted group of people can perform certain actions. You also don't have to care about the encoding, as the DDTSS handles it for you.

Current default properties:

Each language may have a default word list, which is used to provide default translations via tooltips. This list is available via a link at the bottom of the language page.

Workflow

The DDTSS provides the following items for all languages.

Pending translation

A list of pending translations. These descriptions are freely selectable for translation by the user. It looks like this:

exim4 (priority 52)
exim4-config (priority 52)
ibrazilian (priority 47, busy)
postgresql-client (priority 47)
postgresql-contrib (priority 47)
grap (priority 45)

Language teams should try to translate packages with a high priority first, and the packages are sorted to accomplish this. The priority is determined by package category (e.g. essential, base, ...).

Descriptions marked as busy are already reserved by a user and cannot be selected for at most 15 minutes. If there is no commit during this time the translation becomes available again.

A description must be completely translated before the frontend accepts it, so please make sure that you are able to translate the entire text before you start. Select Submit to submit your translation, Abandon if you change your mind and decide not to translate the description, or Unfetch if the description should not be translated (for instance because it needs to be fixed first).

You may also see a translation from a previous version of the English template, supplemented by a diff of the changes in the English translation. In this situation, you may just copy and paste the old translation from the bottom part of the page and update it appropriately.

To avoid ugly fluctuation of the text width it is suggested that you do not enter newlines manually unless necessary (such as for list items). The lines are broken automatically when you submit the translation. Remember that during the proofread a user could add or remove small parts of text, resulting in an inconsistent line length. This could make the diff created by the review hard to read.

It's also possible to select desired packages by name. This is useful to translate a set of similar packages, such as manpages-de, manpages-es, in order to be able to copy and paste common parts.

Even already translated packages can be fetched this way again, to improve them.

Pending review

A list of translated descriptions which still need to be reviewed. This list looks like the following:

1. aspell-es (needs review, had 1)
2. bookmarks (needs initial review)
3. doc-linux-ja-html (needs initial review)
4. doc-linux-ja-text (needs initial review)
5. gnome-menus (needs initial review)
6. geany (needs review, had 2)
7. initramfs-tools (needs initial review)
8. inn2 (needs initial review)

The following flags exist:

needs initial review:
The current version of this translation has not yet passed any review.
needs review:
The current version of this translation needs further reviews, but has already passed at least one.
reviewed:
This description was reviewed without any change by the current user. Proofreads by other users are required.
owner:
This description was translated or changed during a proofread by the current user. Proofreads by other users are required.

If you select a packages which has received a review with corrections, you will get a nice color diff which shows all such corrections.

Recently translated

A list of descriptions transferred to the DDTP, along with the date of the transfer. At most twenty packages are listed.

Common translation rules

It's important that you do not change English descriptions during translation. If you find errors in them you should file a bug report against the corresponding package, see How to report a bug in Debian for details.

Translate the untranslated parts of each attachment which are marked with <trans>. It's important that you do not change lines containing only a period in the first column. These are paragraph separators and will not be visible in APT frontends.

Paragraphs which are already translated are either reused from other descriptions or from an older translation (and thus indicate that this original English paragraph was not changed since that time). If you change such a paragraph, the changes will not propagate to other descriptions with the same paragraph.

Note that each language team has it's own preferences, such as word lists or quotation style. Please follow these standards as close as possible. The most important rules are published. It is suggested that you start reviewing existing translations, either via DDTSS or by browsing descriptions in package management systems such as aptitude, to familiarize with the translation preferences. If you are unsure contact your language team.

Proofreading and error fixing

Currently, only the DDTSS implements a review mode and sends to the DDTP only the translations which passed a fixed number of proofreads.

If you notice common typos or other easy to correct errors such as encoding problems, it is possible to bypass any review process and fix them for all packages at once using a script. It is suggested that only one trusted translation coordinator collects all these issues and applies the script.

Since the proofreading can take a long time especially if most of the changes are minor issues fixes,accompany it may be convenient to just ignore simple typos and inconsistencies during the review and check for all of these (hopefully collected) issues later. This speeds up the review and allows to apply all these minor corrections at once.

Usage of the translations

Proper support for translated package descriptions is available since the APT package in lenny. Using this package every user can read the descriptions in his preferred language in all programs which use APT. This includes apt-cache, aptitude, synaptic, and various other.

APT downloads Translation-lang files from Debian mirrors. These are only available for lenny and newer distributions. The location of these files on mirrors is dists/main/sid/i18n/.

It's also possible to disable usage of translations. To achieve this just add

APT::Acquire::Translation "none";

to /etc/apt/apt.conf. Instead of none you may use the language code of the language you want to be used for descriptions.