On Thu, Feb 28, 2008 at 09:40:50PM +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, то в любой > > > не окончательно поломанной среде эти зависимости должны быть > > > заведомо удовлетворены. > > > > Боюсь что эту оптимизацию придётся убрать, > > иначе порядок установки пакетов в пустую систему может испортиться. > > Тогда уж надо было откатывать и > 5224b77cbdd2200ab040124101a132e92531f134 > build/parseScript.c: opitimize out RPMSENSE_INTERP dependencies on /bin/sh Пакет, у которого есть %post-скрипт на /bin/sh, твоими изменениями теперь получает зависимость на /bin/sh из-за #!/bin/sh, поэтому RPMSENSE_INTERP на /bin/sh тут уже не требуется. На самом деле RPMSENSE_INTERP тут не требуется не только для /bin/sh, но и для всего остального. Эта зависимость теперь вообще не нужна. > Но вообще я считаю, что зависимости, которые есть, грубо говоря, > у каждого второго пакета, можно считать не столько собственными > зависимостями пакета, сколько атрубитами системы, для установки > в которую эти пакеты предназначены. Например, зависимость на /bin/sh > из-за %post-скриптов означает, что сам rpm умеет запускать дефолтный > интерпретатор для исполнения %post-скриптов. Значит, зависимость на > /bin/sh проще обеспечить на "системном" уровне, чем вставлять > её в каждый второй пакет. Осталось только обеспечить, чтобы /bin/sh всегда был. Как это сделать без зависимостей? Написать крупными буквами? -- ldv