Comment on attachment 38166 Optionally use gettext for translations in .policy files
Review of attachment 38166: ----------------------------------------------------------------- It might be useful to also allow gettext-domain to be specified on the <policyconfig> element, to avoid repeating it on every single <description> in the file. ::: src/polkitbackend/polkitbackendactionpool.c @@ +1131,4 @@ > * _localize: > * @translations: a mapping from xml:lang to the value, e.g. 'da' -> > 'Smadre', 'en_CA' -> 'Punch, Aye!' > * @untranslated: the untranslated value, e.g. 'Punch' > + * @domain: the gettext domain for this string. Make be NULL. s/Make/May/ @@ +1153,5 @@ > + { > + gchar *old_locale; > + > + old_locale = g_strdup (setlocale (LC_ALL, NULL)); > + setlocale (LC_ALL, lang); setlocale() is not thread safe. Since polkit could be being used from a thread, we *cannot* call this. We could use uselocale() instead, which only operates on the current thread’s locale. http://pubs.opengroup.org/onlinepubs/9699919799/functions/uselocale.html Unfortunately, as far as I know, there is no gettext function which allows the locale to be specified. The other approach I can think of would be to load up the gettext catalogues manually for the desired locale, but I don’t know if APIs exist for that. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to policykit-1 in Ubuntu. https://bugs.launchpad.net/bugs/619632 Title: Use gettext for translating user messages Status in PolicyKit: Unknown Status in Ubuntu Translations: Fix Released Status in policykit-1 package in Ubuntu: Fix Released Bug description: Binary package hint: policykit-1 PolicyKit currently requires translations to be in the XML, e.g.: <description>Install system color profiles</description> <description xml:lang="cs">Instalovat systémové profily barev</description> This makes it hard to modify translations after build-time and to provide only a set of translations (i.e. a language pack). It would be better to have: <description gettext-domain="gnome-color-manager">Install system color profiles</description> And use the standard gettext system. To manage notifications about this bug go to: https://bugs.launchpad.net/policykit-1/+bug/619632/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp