[devel] rpmlib(...) & apt

Alexander Bokovoy =?iso-8859-1?q?ab_=CE=C1_altlinux=2Eorg?=
Вс Июл 20 15:56:08 MSD 2008


20 июля 2008 г. 15:34 пользователь Alexey Tourbin <at на altlinux.ru> написал:
> On Sun, Jul 20, 2008 at 03:18:48PM +0400, Alexander Bokovoy wrote:
>> > Я утверждаю, что lzma ничего не сломал.
>> >
>> > Была только тонкость с обновлением rpm (нужно перегенерировать или
>> > удалить кеш апта), но мы эту тонкость добили.
>> Апгрейд сизифа месячной давности до текущего все равно приводит к
>> тому, что нужно совершать пассы с --reinstall, иначе все пакеты,
>> перепакованные с lzma не устанавливаются, а kept back. Причем, не
>> apt-get --reinstall update, а с apt-get dist-upgrade --reinstall, а то
>> и другие варианты.
>
> Нет, ты чего-то не понял.  Проблема в кеше апта, а именно, в том,
> что все зависимости вида 'rpmlib(...)' на самом деле *удаляются*
> вообще из кеша апта при его генерации и дальше никак не участвуют
> в разрешении зависимостей.  При этом удаление из кеша зависимостей
> rpmlib(...) происходит на основе вызова rpmCheckRpmlibProvides()
> из *текущей* библиотеки librpm (установленной в хост-системе).
Я все понимаю с технической стороны, а говорю о том, с чем
сталкивается администратор. Для него это выглядит так: apt-get
dist-upgrade приводит к тому, что все пакеты, обновленные версии
которых упакованы с lzma, не подлежат переустановке, то есть, о них
apt пишет "packages kept back". Это относится в первую очередь к rpm
-- он просто отказывается обновлять новый rpm.

Перегенерация кэша, конечно, помогает, но можно было бы собрать
какой-нибудь lua скрипт, который бы детектил эту ситуацию и форсировал
бы очистку кэша apt?

-- 
/ Alexander Bokovoy


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