В нашем RPM окончательно сломана поддержка specspo, что в свою очередь блокирует внедрение specspo в sisyphus
1.Создаём файл /etc/rpm/macros.specspo с содержимым %_i18ndomains specspo 2. cp specspo.mo /usr/share/locale/be/LC_MESSAGES/ 3. в локали be_BY: $ strace -o rpm.strace rpm --info {любой пакет} 4. cat rpm.strace | grep specspo получаем open("/etc/rpm/macros.specspo", O_RDONLY) = 3 read(3, "%_i18ndomains specspo", 8192) = 21 хотя ещё только до последнего обновления было так open("/etc/rpm/macros.specspo", O_RDONLY) = 3 read(3, "%_i18ndomains specspo", 8192) = 21 open("/usr/share/locale/en_US/LC_MESSAGES/specspo.mo", O_RDONLY) = -1 т.е. происходило обращение только к содержимому /usr/share/locale/en_US/LC_MESSAGES/specspo.mo не смотря на работу в иной от en_US локали
А это pre-2.4 или post-2.4? Сдается мне, последнее.
2 ldv: pre-2.4/post-2.4? В чем загвоздка -- выковырять дескрипшены вроде недолго, могу попробовать -- а что еще?
Это поклёп, в коде rpm (функция i18nTag), отвечающем за поддержку specspo, ничего не менялось уже несколько лет. Всё работает так же, как и раньше: 1. в списке %_i18ndomains ищется домен, в котором есть "перевод" для "имя_пакета(имя_тэга)" в локали en_US; 2. если перевод найден, то для этого ключевого слова ищется нормальный перевод в текущей локали. Например, в вашем примере вызывается dgettext("specspo", "любой пакет(Summary)") и т.д.
Замечательно. А можно напомнить тормозам, что еще непосредственно от нас требуется для возможности централизованного перевода описаний? (понятно, что не для 2.4, но скорее тогда в post-2.4 todo?) PS: на досуге дошло, что переводами же и /var/lib/rpm захламляется, выходит. У меня его сейчас 49M...
От меня ничего не требуется. От вас требуется понимание технологии, желание и должная самоорганизация.
ab, Дима говорит, что там все работает, но несколько прикольным макаром :)
2 vk: перечитай #4, там просто цепляются не к тексту в тегах, а к сочетаниям имени пакета с тегом.
(ldv) " Есть одна тонкость: если specspo нет (не установлено, выключено, не найдено, etc.), то будут использованы тэги из пакета. "