Provided by:
emdebian-tdeb_3.0.7_all 
NOM
dpkg-gentdeb - generate Debian TDeb translation packages from source.
SYNOPSIS
dpkg-gentdeb
Copyright et Licence
Copyright (C) 2007, 2011 Neil Williams <codehelp@debian.org>
Ce logiciel est libre; vous pouvez le redistribuer selon les termes de
la licence GNU General Public License telle que publiee par la Free
Software Foundation; en prenant la version 3 de la licence ou (selon
votre choix) n'importe quelle version subsequente.
Ce logiciel est distribue dans l'espoir qu'il soit utile, mais AUCUNE
GARANTIE n'est donnee tant pour des raisons COMMERCIALES que pour
REPONDRE A UN BESOIN PARTICULIER. Consulter la Licence Publique
Generale GNU pour plus de details.
Vous devriez avoir recu une copie de la Licence Publique Generale de
GNU avec ce programme. Sinon, voir <http://www.gnu.org/licenses/>.
DESCRIPTION
dpkg-gentdeb is a dpkg-dev add-on created by Emdebian to create
translation packages (tdebs). dpkg-gentdeb is intended to separate out
the individual translation files from the current Debian packages into
packages without any translation files and a single TDeb package, one
per source package.
Si un second tdeb est gere par un des paquets source, le paquet
$srcpackage-tdeb doit contenir tous les templates debconf utilises par
chacun des paquets binaires. Le second tdeb est souvent utilise pour
les traductions de contenu optionnel.
This script is intended to provide a TDeb during the normal package
build, as well as supporting later calls by translation teams to update
the TDeb, using a debian/$package.tdeb file.
Files to be included in a TDeb MUST be available to dpkg-gentdeb
WITHOUT building the package - during a TDeb update the package can not
rely on ANY of the package build-dependencies being installed, except
possibly for the clean target.
Requirements of a TDeb
o TDeb packages must be Architecture: all or the upload will be
rejected automatically by ftp-master. It is not possible to
override this restriction.
o Files included in TDeb packages must not require any package build-
dependencies to update and package. If the TDeb contains other
Arch:all files like images or meta data files, those files must not
require the use of make or other build instructions to create,
update, install or package.
"dpkg-gentdeb" will update supported translation mechanisms but the
diff between the version of the package in the archive and the
changes for the TDeb update must only relate to the update of the
translation itself.
The build-dependencies for the clean target might exist but this is
not guaranteed.
Une fois qu'un paquet utilise dpkg-gentdeb, les fichiers de traduction
doivent etre enleves de tous les paquets dans la construction normale.
Cela inclut toutes les manpages traduites et les autres contenus
traduits. Les contenus originaux, non traduits, doivent etre conserves.
dpkg-gentdeb runs as a part of the normal package build - simply add
the call to the binary-indep target of debian/rules then describe the
files to be included into the TDeb in the debian/$package.tdeb file.
The tdeb diff is created by translators when updating the tdeb package.
Tdeb packages should depend on the source:Version of the declared
package unless the TDeb replaces an existing -data or -common package
in which case the existing dependency can be retained as long as it is
at least source:Version or better.
The name of the TDeb package can be specified using the -p option.
TDeb uploaders
Initially, the current mechanism of filing bugs and closing bugs with a
new upload will be used for TDeb updates as well. In order for these
uploads to be accepted, packages using TDebs need to define
Translation-Maintainers: in debian/control (usually the debian-i18n
mailing list) and Localisation Assistants (uploaders nominated by
Debian who coordinate translation updates so that any one package gets
a single TDeb containing multiple updated translations).
Creating a TDeb
If your package already puts translations into a -data or -common
package and this package contains no other files which would be
disallowed in a TDeb (i.e. files which require the package build
process to create, update, install or package), then this package can
be used as a TDeb.
If you need to add a new package to your source for the TDeb, create
that package in debian/control as normal.
Now create a .tdeb file for that package in debian/ - e.g. if the
source package is foo and the TDeb will be foo-locale, create the file
debian/foo-locale.tdeb
TDeb listing in the control file
Package: $fullname
Architecture: all
Priority: extra
Section: localization
Depends: $mainpackage (>= ${source:Version})
XC-Package-Type: tdeb
Description: Translations for $mainpackage (tdeb)
$mainpackage_short_description
.
This package contains the translation files.
TDebs are only allowed to Depend: on the main package built from
the same source package and must use a versioned dependency of
equal to or greater than the source:Version. This allows TDebs to
remain installed whilst new translations are being prepared, if the
source package has changed the strings for translation.
Listing files for a TDeb
The .tdeb file needs to allow "dpkg-gentdeb" to locate the translation
files and identify the upstream name used by the package translations.
e.g. If the package uses gettext, this will be the name of the .mo
files installed in /usr/share/locale/$lang/LC_MESSAGES/. Note that this
must be the name used by upstream and may have no direct relation to
any of the Debian packages built from this source. This name will also
be used to identify and update the POT file. If the package uses
multiple PO directories, list each name separately.
Translated manpages, where used, must be included in the TDeb -
retaining the English manpages in the current package. List these files
in the .tdeb file.
Untranslated content which complies with the requirements of a TDeb can
also be listed in the .tdeb file.
Experimental QtLinguist support
Whilst it is possible to use TDebs with Qt translations, this is not
currently being tested and is hindered by the translation tools being
packaged in the libqt4-dev package which could be an unwelcome
dependency for dpkg-gentdeb in most cases. It is possible that
"dpkg-gentdeb" may support an option to enable Qt support where
necessary.
The .tdeb file must then list the name of the translations files used
by upstream where the normal path would be
/usr/share/$NAME/translations.
[linguistproject] project.pro
OPTIONS
L'action par defaut est de traiter tous les fichiers PO disponibles et
tous les contenus traduits identifiables.
Utilisation dans Debian
XC-Package-Type: tdeb needs support in Debian. Notably, many of the
scripts in the devscripts package fail to identify the TDeb in the
.changes file and certain debhelper scripts fail to handle the TDeb
package-type.
reprepro a besoin d'un patch pour accepter les .tdeb et autoriser .tdeb
dans les fichiers du depot :
$ reprepro --ignore=extension -b /path/ includedeb \
unstable ../qof-locale-sv_0.7.5-1em1_arm.tdeb
$ ls /opt/reprepro/locale/pool/main/q/qof/
qof-locale-sv_0.7.5-1em1_arm.deb
Nom de fichier : pool/main/q/qof/qof-locale-sv_0.7.5-1em1_arm.deb
Description : traduction sv pour qof (tdeb)
reprepro a besoin lui aussi d'une facon de gerer un .tdeb dans un fichier .changes.
reprepro -b /opt/reprepro/locale/ include unstable ../qof_0.7.5-1em1_arm.changes
S<X qof-locale-id_0.7.5-1em1_arm.tdeb X> is not .deb or .udeb!
There have been errors!
Autres traductions
Les paquets peuvent aussi contenir des pages de manuel traduites et des
traductions pour des templates debconf. Ces traductions ne sont pas
encore empaquetees ou traitees par dpkg-gentdeb. Pour que les TDebs
soient acceptes dans Debian, ces problemes devront etre resolus de
facon a ce qu'Emdebian puisse continuer a n'empaqueter que les
traductions gettext, en omettant les manpages traduites et en laissant
la prise en charge des traductions debconf aux outils existants ou en
implementant des changements suffisants dans cdebconf.
Templates Debconf
Les paquets peuvent avoir besoin de renommer le fichier de templates
pour le fichier template et de changer la reference dans
debian/po/POTFILES.in vers le nouveau fichier. Ceci conduit a un
warning lintian :
Now running lintian...
W: dpkg-cross: no-debconf-templates
Finished running lintian.
Ce paquet doit probablement avoir besoin de Pre-dependre du TDeb
maintenant. Alternativement soit dpkg soit debconf doit automatiquement
installer un TDeb avant d'essayer de configurer le paquet principal.
Les fichiers de templates sont la raison la plus courante de
reconstruction l10n de paquets avant une publication.