[devel] contents_index provides (rxvt-unicode vs xinitrc)
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Пн Мар 10 13:17:55 MSK 2008
On Mon, Mar 10, 2008 at 04:54:39PM +0700, Евгений Терешков wrote:
> > Вообще же файловая зависимость на /usr/bin/xvt у xinitrc кажется мне
> > более правильной. Если xinitrc запускает /usr/bin/xvt, то нет ничего
> > лучше, чем просто требовать /usr/bin/xvt. Поскольку /usr/bin/xvt
> > является альтернативой, то alternatives.prov должен автоматически
> > прописать "Provides: /usr/bin/xvt" у всех пакетов, которые претендуют
> > на эту альтернативу. А вот "Provides: xvt" Пушкин не напишет.
>
> runwm из пакета xinitrc запускает xvt по пути относительно $PATH. И требует
> соответсвенно не по абсолютному пути.
У нас пока не поддерживаются виртуальные зависимости вида
executable(xvt). В общем, требовать путь к альтернативе --
не самый плохой вариант (а может быть и самый хороший).
Собственно, если бы при сборке пакета xinitrc в сборочном чруте
стоял хотя бы один из пакетов с альтернативой xvt, то зависимость
на /usr/bin/xvt появилась бы автоматиически.
$ rpm -ql xinitrc |xargs grep -w xvt
/etc/X11/Xsession: export BROWSER="xvt -e $n"
/usr/bin/runwm: echo "xvt -geometry 100x25+0+0 $@"
/usr/bin/runwm: xvt -geometry 100x25+0+0 &
$ /usr/lib/rpm/shell.req -v /usr/bin/runwm
shell.req: /usr/bin/runwm: cat -> /bin/cat -> coreutils (via contents_index_bin)
coreutils
shell.req: /usr/bin/runwm: xvt -> /usr/bin/xvt -> ... (via host_env)
shell.req: /usr/bin/runwm: /usr/bin/xvt -> /usr/bin/xvt -> /usr/bin/xvt (alternative)
/usr/bin/xvt
$
То есть здесь проблема в том, что /usr/bin/xvt отсутствует в
contents_index (потому что альтернатива на запакована как файл в пакете,
а создаётся только после установки). Поэтому остаётся искать
/usr/bin/xvt только в хост-системе. И, таким образом, при сборке
в хешере зависимость на /usr/bin/xvt теряется.
Я вот думаю, стоит ли дополнить contents_index альтернативами.
> Получается, что надо чинить xterm, xinitrc (и ещё что-то, список выше
> скипнут) чтобы они требовали и провайдили полный путь?
Путь альтернативы провайдится автоматически.
/usr/lib/rpm/alternatives.prov
То есть "Provides: /usr/bin/xvt" где надо появится автоматически.
А вот "Provides: xvt" Пушкин не напишет.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?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/20080310/7576dd0f/attachment-0002.bin>
Подробная информация о списке рассылки Devel