[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