[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFC: Signed packages and translations



> > - What would source packages look like for such a system? It /is/
> >   possible to continue to use the old .orig.tar.gz + diff.gz, but
> >   automatic updates for new translations would invalidate the
> >   maintainer's signature. Should we seize the opportunity to switch to
> >   a more flexible source package format? Or just switch to
> >   .orig.tar.gz + diff.gz + .i18n.tar.gz?

> The new source format is the old source format. 

> The translated parts are in the normal diff.gz. 

They cannot be, since the maintainer is not involved in uploading
them. I think the i18n.tar.gz approach is the way to go. What about
this:

The *.i18n.tar.gz file contains files named "package.control-ll_CC" and
"package.templates-ll_CC" which look like this (for the control file):

Package:
Description: <original English description>
Description-ll_CC: <translated description>

dpkg-source knows about these files, omits them from the diff and
generates a separate .i18n.tar.gz when building source packages.
However, only the descriptions which match the description from the
master "control" file are added -- the others will just cause a
warning.

When building the package, the translated descriptions will be
generated from these files in the resulting .deb.

When katie sees a .i18n.tar.gz file, it will pass this file on to the
ddtp's database, where it will be used to update the database. After
that, the file is regenerated from the database and installed together
with the rest of the package. When the ddtp database is updated, a new
.i18n.tar.gz file is generated and installed, and the .deb is updated
accordingly.

This way, translators as well as maintainers can update the database
-- translators by sending mail to the ddtp mailbot, maintainers by
uploading .i18n.tar.gz files. To avoid problems with incorrect
translations, maintainers are asked not to upload .i18n.tar.gz files
unless necessary (perhaps that you need to pass a special option to
dpkg-genchanges). Whenever the database is updated, the .debs and the
.i18n.tar.gz are updated on the ftp server, but the .diff.gz is
untouched.

I think the .i18n.tar.gz file should not be mentioned in
the .dsc file, since it will change over time, invalidating the
signature. Hrm, it seems that file will need a .sig file signed by
katie to accompany it when you download the full source.

It's early morning and I'm tired. I almost bet I overlooked something.

   Simon



Reply to: