[devel] How to use alternatives ?
Илья Евсеев
=?iso-8859-1?q?ilya=5Fevseev_=CE=C1_mail=2Eru?=
Пн Дек 27 03:36:06 MSK 2004
Всем привет.
Имеется следующая проблема с использованием alternatives-0.2.0-alt0.6:
при удалении пакета с высоким приоритетом симлинк исчезает вообще,
вместо того чтобы переназначиться на вариант с низким приоритетом.
Спек первого пакета (%name = dosbox):
-------------------------------------------------------
%install
...
# Alternatives support
%__mkdir_p %buildroot%_altdir
%__cat << __EOF__ > %buildroot%_altdir/%name
<group name="candidate">
<option name="link">%_bindir/%name</option>
<option name="real">%_bindir/%name-wrapper</option>
<option name="weight" type="number">10</option>
</group>
__EOF__
%post
%post_register_alternatives %name -- %name
%preun
%preun_unregister_alternatives %name
-------------------------------------------------------
При его инсталляции правильно создается симлинк
/usr/bin/dosbox, указывающий на /usr/bin/dosbox-wrapper.
Спек второго пакета (%name = dosbox-russian, %name0 = dosbox):
-------------------------------------------------------
%install
...
# Alternatives support
%__mkdir_p %buildroot%_altdir
%__cat << __EOF__ > %buildroot%_altdir/%name
<group name="candidate">
<option name="link">%_bindir/%name0</option>
<option name="real">%_bindir/%name</option>
<option name="weight" type="number">40</option>
</group>
__EOF__
%post
%post_register_alternatives %name
%preun
%preun_unregister_alternatives %name
-------------------------------------------------------
При его инсталляции правильно симлинк /usr/bin/dosbox
начинает указывать на /usr/bin/dosbox-russian.
Однако при удалении этого пакета симлинк не перенацеливается
обратно на /usr/bin/dosbox-wrapper, а исчезает совсем.
Что я сделал не так?
С уважением,
Илья Евсеев
Подробная информация о списке рассылки Devel