[devel] exim-common-4.67-alt1
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вс Сен 16 19:40:10 MSD 2007
> exim-common-4.67-alt1 Requires /etc/sysconfig/network
> +exim-common-4.67-alt1 Requires /usr/sbin/exim
> exim-common-4.67-alt1 Requires coreutils
В пакете exim-common появляется unmet на /usr/sbin/exim,
из-за симлинков, которые на него смотрят. Вот кусочек лога сборки:
find-provides: absolute symbolic link /usr/src/tmp/exim-buildroot/etc/aliases -> /etc/exim/aliases is not going to provide anything
find-provides: absolute symbolic link /usr/src/tmp/exim-buildroot/usr/sbin/mailq -> /usr/sbin/exim is not going to provide anything
find-provides: absolute symbolic link /usr/src/tmp/exim-buildroot/usr/sbin/rmail -> /usr/sbin/exim is not going to provide anything
find-provides: absolute symbolic link /usr/src/tmp/exim-buildroot/usr/sbin/rsmtp -> /usr/sbin/exim is not going to provide anything
find-provides: absolute symbolic link /usr/src/tmp/exim-buildroot/usr/sbin/runq -> /usr/sbin/exim is not going to provide anything
find-provides: absolute symbolic link /usr/src/tmp/exim-buildroot/usr/sbin/sendmail -> /usr/sbin/exim is not going to provide anything
[...]
symlinks.req: /usr/src/tmp/exim-buildroot/usr/sbin/mailq: /usr/sbin/exim -> /usr/sbin/exim (raw, not found)
symlinks.req: /usr/src/tmp/exim-buildroot/usr/sbin/rmail: /usr/sbin/exim -> /usr/sbin/exim (raw, not found)
symlinks.req: /usr/src/tmp/exim-buildroot/usr/sbin/rsmtp: /usr/sbin/exim -> /usr/sbin/exim (raw, not found)
symlinks.req: /usr/src/tmp/exim-buildroot/usr/sbin/runq: /usr/sbin/exim -> /usr/sbin/exim (raw, not found)
symlinks.req: /usr/src/tmp/exim-buildroot/usr/sbin/sendmail: /usr/sbin/exim -> /usr/sbin/exim (raw, not found)
/usr/sbin/exim не предоставляется ни одним пакетом и не содержится
ни в одном пакете. Считаю такое положение вещей неправильным.
Симлинк /usr/sbin/exim появляются при исполнении post-скриптов
некоторых пакетов, напр.
$ rpm -qp --scripts exim-heavy-4.67-alt1.i586.rpm
postinstall scriptlet (through /bin/sh):
ln -sf /usr/sbin/exim-heavy /usr/sbin/exim
/usr/sbin/post_service exim
preuninstall scriptlet (through /bin/sh):
/usr/sbin/preun_service exim
$
Вообще-то такие вещи лучше делать с использованием alterntaives.
Напирмер, в данной "самопальной" реализации после удаления пакета
останется битый симлинк /usr/sbin/exim, тогда как alterntavies
его бы "подчистил".
Кроме того, если повесить симлинк /usr/sbin/exim на альтернативы,
то каждая альтернатива теперь будет делать автоматический Provides:
/usr/sbin/exim.
В любом случае, даже при сохранении самопальной схемы, /usr/sbin/exim
должен кто-то содержать как файл или предоставлять как зависимость.
То есть при сохранении самопальной схемы нужно во все пакеты, которые
делают симлинк /usr/sbin/exim, добавить Provides: /usr/sbin/exim.
(Если же хочется узко решить именно эту проблему, то достаточно
в билдруте создать какой-нибудь файл или небитый симлинк /usr/bin/exim).
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20070916/71d71857/attachment-0002.bin>
Подробная информация о списке рассылки Devel