Info Policy: различия между версиями

Материал из ALT Linux Wiki
м (переименовал «InfoPolicy» в «Info Policy»)
 
(не показаны 4 промежуточные версии 2 участников)
Строка 1: Строка 1:
{{span|font-size: 180%|}}
{{span|font-size: 180%|}}
{{DraftPolicy
{{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
----------------------------


> > И получается, по хорошему еще нужна проверка
> > И получается, по хорошему еще нужна проверка

Текущая версия от 09:29, 21 июля 2010

Stamp90cw.png
Действующая политика Sisyphus

Политика действует, начиная со стабильного бранча 5.1 и выше.

Ответственный за проведение политики в жизнь — Igor Vlasenko.

Нарушения политики отслеживаются: sisyphus_check


Полиси по упаковке 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
отдельно.