On Sat, Sep 01, 2001 at 07:59:32AM +0200, Simon Richter wrote: > > Step 1: Signed archives > ----------------------- I don't make comments on this. I am not a dpkg guru and IMHO dpkg support now some signaturs. > Step 2: Allow addition/removal of members in .deb archives > ---------------------------------------------------------- > > In order for automatic insertion of translated texts into ready .deb > archives to work, dpkg-deb needs to support adding and removing of members, > together with their signatures. this is a nice idea and it make something like subpackages. but maybe we must make thoughts about that. some dpkg mens? If we can make this, read the following: > Step 3: Translations > ---------------------------------------------------------- > > Translations are added inside special member archives which have their name > derived from control.tar.gz by a) prepending "_t" during the transitional > period and b) appending their locale name to the first component > ("control"), separated by a dash. If the resulting name exceeds > sizeof(ar_name) bytes, the first component is shortened accordingly (but > never the locale name): > > The translation archive can contain a "control" and a "templates" file. > These files have much the same format as the corresponding files from the > control.tar.gz file but with the exception that they contain only the > identifiers ("Package: xyz" for "control" and "Template: foo/bar" for > "templates") and the translated "Description-ll_CC:" field. These files are > merged by dpkg-deb when extracting the package. (btw: in the template file we have more translateable tags) I like this all, but we have the problem with outdated translations. Now I make a extra proposal: The maintainer put the translations in not direct in the deb. He put the translation in a po-file per languages in the debian source directory. (controll-XX.po). A to written script (dh_i10ndesc) include the translation only in the deb, if the orignal description from the po file comform with the description in the controll file. With this we don't have outdate descriptions in the deb. dpkg isself use the dgettext patch. The patch is very small, and gettext make the work. With this we have dselect and dpkg --list, --yet-to-unpack and --audit translated. dpkg --info should show the normal output (without dgettext) and all translations in the deb. The dgettext use the mo file in /usr/share/desc-trans/<locale>/ and this file will generated from all po file in /usr/share/desc-trans/<locale>/desc.d/ dpkg -i regenerate the po file with the orignal and translated description from the package and save this po files in the desc.d directory. The user can install a desc-trans-XX.deb and have with this deb a local override file. this all is only for dpkg, and not for apt. Apt can use dgettext also, but in the mo file are no descriptions from new packages (maybe some from the local override file). We need a solution for apt. katie has all informations. it has the descriptions from the packages, the translations from the packages and maybe one/some override files with traslations. It can make Packages-XX files. But I don't like this. IMHO better is this: katie make the normal Packages file and some Descriptions-XX files. With only Package: and Description-XX: tags. Apt can download the Packages file like normal and/or on/some Descriptions file(s). The user can config what languages he will support. Apt can use this Descriptions files itself or (IMHO) better make a po file with the Packages and Description file and make with this a mo file. And use the normal dgettext. With this we don't use the desc-trans-XX.deb in real. On word to the 'fallback langauges'. It is not nice that the fallback languages is english in the normal way. Maybe someone should patch the gettext lib and add multilanges support to this lib. The gettext should probe some languages (like this pseudo code: if not text=gettext ("hello","de_DE") { if not text=gettext ("hello","fr") { text="hello" } } printf text; ) The use can set the LANG enviroment like LANG=de_DE:fr to get first the german, as first fallback the french and as last fallback the english text. With this modified gettext lang, all gettext applications use this (like mutt). (I am not a gettext guru, and gettext support this feature already?) Gruss Grisu -- Michael Bramer - a Debian Linux Developer http://www.debian.org PGP: finger grisu@db.debian.org -- Linux Sysadmin -- Use Debian Linux Traue nie einer Computerzeitschrift mit schoenen Frauen auf dem Cover. (Besim Karadeniz in de.comm.internet.misc)
Attachment:
pgpeIQhTj6ppA.pgp
Description: PGP signature