[devel] rpm 4.0.4-alt87
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Чт Фев 28 21:34:19 MSK 2008
On Thu, Feb 28, 2008 at 09:00:53PM +0300, Alexey Tourbin wrote:
> On Wed, Feb 27, 2008 at 07:46:04PM +0300, Dmitry V. Levin wrote:
> > On Sun, Feb 24, 2008 at 09:01:21PM +0300, Alexey Tourbin wrote:
> > [...]
> > > Чтобы не появилось слишком много bulk зависимостей, я реализовал
> > > оптимизацию, которая удаляет следующие зависимости (как "команды"
> > > в шелл-скриптах, так и соответствующие им /bin/ пути):
> > > sh cat rm mv cp mkdir ln
> > >
> > > (список можно будет немного увеличить, если кто-нибудь захочет
> > > составить более точную статистику, чем у меня получилось с ходу).
> > >
> > > Поскольку сам rpm требует coreutils и /bin/sh, то в любой
> > > не окончательно поломанной среде эти зависимости должны быть
> > > заведомо удовлетворены.
> >
> > Боюсь что эту оптимизацию придётся убрать,
> > иначе порядок установки пакетов в пустую систему может испортиться.
>
> Я об этом думал. Другая похожая возможность нарушения порядка --
> это использование 'rpmi --root chroot/' при отсутствии rpm в чруте.
Ну это и есть вариант установки пакетов в пустую систему.
> В любом случае, корректная процедура инициализации пустой системы
> или чрута должна начинаться с установки самого rpm. Значит, порядок
> пакетов в худжем случае придётся проконтролировать только для конечного
> числа пакетов, от которых зависит rpm.
Я не уверен, что rpm как пакет всегда должен присутствовать в любой системе.
> Насколько я вижу, сейчас есть всего один пакет, который "меньше" rpm
> и в котором есть shell-скриптлет -- coreutils, в котором дёргается
> install-info. Значит, в coreutils желательно вручную прописать
> зависимость на /bin/sh. Ещё в принципе желательно добавить зависимость
> на /bin/sh в info-install.
А как быть с зависимостями на coreutils? Их тоже предлагается optimize out
в сочетании с гарантией того, что coreutils должен быть установлен раньше
других пакетов?
В любом случае убирать автозависимости вида /bin/cp не вижу смысла: обычно
такие зависимости это признак ошибки неиспользования $PATH.
> Таким образом, если заморачиваться этой гипотетической проблемой,
> то зависимость на /bin/sh нужна в трёх местах -- rpm, coreutils
> и info-install. Я считаю это достаточно надёжной конструкцией --
> больше нигде зависимость на /bin/sh можно не ставить.
А как гарантировать, что эти три кита будут установлены раньше других
зависимых пакетов, если действует оптимизация зависимостей на coreutils?
> С другой стороны, в hasher используется специальная процедура
> инициализации чрута, которая НЕ ПОЛАГАЕТСЯ на порядок установки
> базовых пакетов.
Да, не о hasher речь.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20080228/583539ff/attachment-0002.bin>
Подробная информация о списке рассылки Devel