[devel] Re: RPM

Вячеслав Диконов =?iso-8859-1?q?sdiconov_=CE=C1_mail=2Eru?=
Чт Дек 26 02:40:21 MSK 2002


В Чтв, 26.12.2002, в 00:32, Sviatoslav Sviridov написал:
> On 25 Dec 2002 23:14:06 +0300
> Вячеслав Диконов <sdiconov на mail.ru> wrote:
> 
> > В Срд, 25.12.2002, в 14:06, Alexey Tourbin написал:
> > > On Tue, Dec 24, 2002 at 09:00:21PM +0300, Вячеслав Диконов wrote:
> > > > Кто-нибудь! Дайте пример как втолковать apt, что один из группы
> > > > удаляемых пакетов  необходим для работы %postun скриптов остальных и
> > > > должен удаляться последним.
> > > 
> > > http://www.altlinux.ru/pipermail/devel/2002-October/007194.html
> > Я тоже нашёл этот способ, но он НЕ РАБОТАЕТ! 
> > 
> > Мои опыты показали, что APT полностью игнорирует конструкции вида 
> > Requires(postun):, Requires(pre, postun): при
> > задании порядка удаления пакетов. RPM, напротив, понимает и учитывает их. 
> > 
> > Самоцитата:
> > В истории изменений apt-rpm-0.5.4cnc1 увидел:
> >  Package ordering
> >     In previous versions, package installation ordering used to be
> > delegated to RPM. Now APT-RPM will provide an ordered list to RPM, and
> > ask it not to change this order. Besides the little speed improvement,
> > this fixes a problem in RPM since, unlike APT, it doesn't order packages
> > being removed. You can still get the old behavior by setting RPM::Order
> > to true.
> > 
> > Это точно оно. Стоит ли включать RPM::Order, если мой случай пока
> > единственный в масштабах Сизифа? Есть ли иной способ управлять очерёдностью
> > удаления? Пока что вешаю ошибку на apt.
> 
> RPM::Order=true было добавлено по умолчанию в apt.conf ещё до попадания апта в
> сизиф, посмотрите в apt.conf.rpmnew
У меня его нет, а в apt.conf действительно написано RPM Order = true.

Та-ак. 
Если пакет1 требуется для %postun пакета2, что записано в spec пакета2
как "Requires(pre,postun): пакет1", то:

Команда rpm -e пакет1 пакет2 удаляет всё в правильном порядке, а rpm -e
пакет2 пакет1 вызывает ошибку. 

"Apt-get remove пакет1 пакет2" тоже делает всё наоборот, как и 
"Apt-get remove пакет2 пакет1" и "Apt-get remove пакет1".

Получается, что RPM тоже не учитывает Requires(postun):, а apt всё равно
задаёт порядок удаления сам.


Подробная информация о списке рассылки Devel