Info Policy: различия между версиями
(Создана новая страница размером {{span|font-size: 180%|}} {{DraftPolicy |responsible=Igor Vlasenko }} == Полиси по упаковке Info файлов == <pre> ...) |
SirRaorn (обсуждение | вклад) м (переименовал «InfoPolicy» в «Info Policy») |
||
(не показано 5 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
{{span|font-size: 180%|}} | {{span|font-size: 180%|}} | ||
{{ | {{Policy | ||
|since_branch=5.1 | |||
|metabug=sisyphus_check | |||
|responsible=Igor Vlasenko | |responsible=Igor Vlasenko | ||
}} | }} | ||
Строка 6: | Строка 8: | ||
== Полиси по упаковке Info файлов == | == Полиси по упаковке Info файлов == | ||
=== Нормативная часть === | |||
1. Пакеты, содержащие info файлы, | |||
не должны устанавливать их с помощью install-info | |||
или устаревших макросов %install_info, %uninstall_info и %__install_info. | |||
2. Зависимости Requires(post,posun) на install-info запрещены. | |||
3. info файлы должны иметь | |||
INFO-DIR-SECTION и START-INFO-DIR-ENTRY. | |||
=== Пояснения === | |||
<pre> | <pre> | ||
В новой сборке пакета texinfo (точнее говоря, info-install) реализован | В новой сборке пакета texinfo (точнее говоря, info-install) реализован | ||
Строка 40: | Строка 54: | ||
> они носили с собой внутри? | > они носили с собой внутри? | ||
Да, только патчить надо texinfo- | Да, только если есть texinfo-исходники (.texi) | ||
то патчить лучше texinfo-файлы. | |||
см. | |||
$ info texinfo 'Installing Dir Entries' | |||
Пример патча: | |||
---------------------------- | |||
--- edb.texi 2009-08-25 15:51:51 +0000 | |||
+++ edb.texi 2009-08-25 15:54:13 +0000 | |||
@@ -7,6 +7,11 @@ | |||
@syncodeindex tp cp | |||
+@dircategory Emacs | |||
+@direntry | |||
+ * EDB: (edb). The Emacs Database | |||
+@end direntry | |||
+ | |||
@include version.texi | |||
@titlepage | |||
---------------------------- | |||
> > И получается, по хорошему еще нужна проверка | |||
> > brp-verify-info на наличие INFO-DIR-SECTION и START-INFO-DIR-ENTRY. | |||
rpm-build-4.0.4-alt98.10 уже проверяет info-файлы. | |||
По умолчанию наличие неправильных info-файлов является ошибкой. | |||
Изменить умолчание можно с помощью | |||
%set_verify_info_method relaxed | |||
> > Тогда надо подправить update-info-dir, | |||
> > чтобы он был совместим с %_xemacs_installinfo. | |||
> > Иначе сейчас это ломает справку xemacs. | |||
texinfo-4.13-alt4 уже обучен обрабатывать каждый каталог в /usr/share/info | |||
отдельно. | |||
</pre> | </pre> |
Текущая версия от 09:29, 21 июля 2010
Полиси по упаковке Info файлов
Нормативная часть
1. Пакеты, содержащие info файлы, не должны устанавливать их с помощью install-info или устаревших макросов %install_info, %uninstall_info и %__install_info.
2. Зависимости Requires(post,posun) на install-info запрещены.
3. info файлы должны иметь INFO-DIR-SECTION и START-INFO-DIR-ENTRY.
Пояснения
В новой сборке пакета texinfo (точнее говоря, info-install) реализован файлтриггер, который теперь следит за тем, чтобы info index был всегда в актуальном состоянии. Мантейнерам спек-файлов больше не нужно следить за корректностью вызовов %install_info, %uninstall_info и %__install_info. Более того, теперь лучше все такие устаревшие вызовы из спек-файлов убрать. Для напоминания я расставил вывод предупреждений как на стадии вычисления устаревших макросов, так и в самих вызываемых утилитах. -- ldv > > Так же по новой схеме важно, чтобы у info файлов были заполнены > > INFO-DIR-SECTION и > > START-INFO-DIR-ENTRY. > > > > У нас нашелся всего один пакет без INFO-DIR-SECTION с явными > > --entry= --section=, > > ./ucblogo-6.0-alt1.src.spec:/sbin/install-info %_infodir/ucblogo.info +--entry="* UCBLogo: (ucblogo). Berkeley Logo User Manual." +--section="Programming Languages" %_infodir/dir 2>/dev/null || : Все прямые и косвенные вызовы install-info из спек-файлов теперь игнорируются. > Правильно ли я понимаю, что теперь, чтобы > избежать замусоривания %_infodir/dir, нам надо запретить > такие фокусы с --section= и --entry=", > и вместо этого явно патчить .info файлы, тобы > корректные INFO-DIR-SECTION и START-INFO-DIR-ENTRY > они носили с собой внутри? Да, только если есть texinfo-исходники (.texi) то патчить лучше texinfo-файлы. см. $ info texinfo 'Installing Dir Entries' Пример патча: ---------------------------- --- edb.texi 2009-08-25 15:51:51 +0000 +++ edb.texi 2009-08-25 15:54:13 +0000 @@ -7,6 +7,11 @@ @syncodeindex tp cp +@dircategory Emacs +@direntry + * EDB: (edb). The Emacs Database +@end direntry + @include version.texi @titlepage ---------------------------- > > И получается, по хорошему еще нужна проверка > > brp-verify-info на наличие INFO-DIR-SECTION и START-INFO-DIR-ENTRY. rpm-build-4.0.4-alt98.10 уже проверяет info-файлы. По умолчанию наличие неправильных info-файлов является ошибкой. Изменить умолчание можно с помощью %set_verify_info_method relaxed > > Тогда надо подправить update-info-dir, > > чтобы он был совместим с %_xemacs_installinfo. > > Иначе сейчас это ломает справку xemacs. texinfo-4.13-alt4 уже обучен обрабатывать каждый каталог в /usr/share/info отдельно.