On Tue, Jan 09, 2001 at 09:45:05PM +0300, Ivan Zakharyaschev wrote: > > > 4. Запихать все такие триггеры в один пакет, например initscripts или > > > специально для этого созданный. Тогда spec-файлы отдельных пакетов > > можно > > > оставить такими, какими они есть. > > > > В initscripts нельзя, он устанавливается в системе много раньше других. > > Так это наоборот хорошо: этим гарантируется, что ни один "старый" пакет не > будет заменен без исполнения предназначенного для него trigger'а. После > установки initscripts trigger'ы будут в системе, и в конце обновления > каждого из затронутых пакетов будет исполнен один из них. Нужно только к > уже написанным магическим строчкам добавить проверку на то, происходит ли > просто удаление или обновление пакета (не уверен, что это можно сделать). Нет. Когда ставится initscripts, никаких пакетов, на которые может сработать триггер, нет. Но дело не в этом. Предполагается, что в Sisyphus просто нет "неправильных" пакетов, в состав которых входят файлы, находящиеся под управлением chkconfig. Если они еще остались, то это дурное наследие Mandrake надо просто зафиксить. > > > Если до этого дойдет дело, то тогда можно попробовать создать и > > макрос > > > более широкого назначения для пакетов, предоставляющих стартовые > > скрипты: > > > %{initscript:name chkconfigSince}. > > > > Не понял. > > Я сам только смутно его представляю: который бы делал все то, что > прописывается вручную в spec-файле в связи с установкой init-скрипта: > вызовы chkconfig в postinstall, в preun -- с нужными проверками на > количество пакетов, а также уже описанный chkconfigAddSince. И еще, что > уже совсем на грани фантастики, добавление /etc/rc.d/init.d/scriptname в > секцию %files. > > Не знаю, позволяют ли технические возможности такой макрос написать: нужна > возможность "нанизывать" команды в секции %post, %preun (в которых кроме > установки init-скрипта могут совершаться и другие действия, в том числе и > установка второго такого скрипта); можно во избежание этих трудностей > вместо %post и %preun использовать соответствующие triggers -- ограничиния > на их число, наверное, нет. Тогда на каждый init-скрипт по три триггера > (один из которых борется со "старыми" пакетами). Это сразу в TODO (точнее говоря, в TOTHINKABOUT) для rpm-4.1 :-) Regards, Dmitry +-------------------------------------------------------------------------+ Dmitry V. Levin mailto://ldv@fandra.org Software Engineer PGP pubkey http://www.fandra.org/users/ldv/pgpkeys.html IPLabs Linux Team http://linux.iplabs.ru Fandra Project http://www.fandra.org +-------------------------------------------------------------------------+ UNIX is user friendly. It's just very selective about who its friends are.