[devel] repocop patches for %post/un_ldconfig
Igor Vlasenko
=?iso-8859-1?q?vlasenko_=CE=C1_imath=2Ekiev=2Eua?=
Вт Апр 15 18:35:47 MSD 2008
On Tue, Apr 15, 2008 at 05:08:37PM +0400, Alexey Tourbin wrote:
> rpm не потянет две секции %post.
Это я недавно открыл для себя RPM::Headers
и обратил внимание, что в заголовках допускаются
множественные %post.
Т. е. это бутафория?
>
> > 2) кто-то не испугается и даже упростит потом до
> > %post -p %post_ldconfig
> > %update_menus
> > :)
> Так нельзя упростить. Это конструкция означает, что в качестве
> интерпретатора будет запущен /sbin/ldconfig, и на stdin ему скормят
> содержимое скрипта. Если скрипт будет побольше, то rpmi при установке
> получит SIGPIPE. (Точнее, SIGPIPE он не получит, потому что он
> сохраняет скрипт во временный файл, а не прокачивает его в интерпретатор
> напрямую.)
Алексей, вы не заметили :) в конце :).
> Вообще, большая часть %post-like скриптов типична и сводится к тому,
> что если в пакете есть файл или provides определённого шаблона, то нужно
> дёрнуть соответствующий hook (возможно, с аргументами).
>
> То есть в принципе это можно возложить на автоматику, но как хорошо эту
> автоматику реализовать я не знаю. В принципе есть два подхода:
> 1) В rpmb автоматически комплектовать %post-like скрипты при сборке
> пакта. Тогда каждый *.rpm пакет останется self-contained.
> 2) Модифицировать rpmi, чтобы он дёргал что надо прямо во время
> установки. Тогда в пакетах %post-like скрипты можно вообще не писать,
> но это будет неявная зависимость на "вумный" rpmi.
При 2) пакеты обновлять проще, так как весь код в одном месте.
--
Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine
Подробная информация о списке рассылки Devel