[devel] alternatives

Mikhail Zabaluev =?iso-8859-1?q?mhz_=CE=C1_altlinux=2Eorg?=
Сб Мар 29 16:11:57 MSK 2003


Доброго времени суток.

Сегодня стал знакомиться с alternatives.
Брови полезли наверх почти сразу.

>    <group name="candidate">
>        <option name="link" type="string"  value="/usr/bin/gcc" />
>        <option name="real" type="string" value="/usr/bin/colorifer" />
>        <option name="weight" type="number" value="50" />

Спецификация XML (есть DTD? Schema?) для описания кандидатов
чересчур громоздка. Зачем все эти <group name="candidate"/>
и <option name="link" type="string" value="..."/>, когда достаточно:
<candidate/> и <link file="..."/>

>    1. Из-за особенностей кодирования путей к файлам в именах
>       кадидатов запрещается использование
>    символа '|'

Чем изобретать схемы кодирования путей и запрещать символы,
не лучше ли отобразить иерархию на каталог, где размещаются ссылки?
И каталог будет выглядеть аккуратно, и в bash эти ссылки
можно будет набирать, пользуясь автодополнением (попробуйте,
какой гемор доставляют сейчас "особенности кодирования").
Сейчас ссылки мешаются с каталогами auto, manual, старыми
альтернативами и пр. Наверное, лучше спрятать их под
/etc/alternatives/links, и сделать реальными именами путей,
повторяющими файловую систему от корня.

Неясно, зачем было завязывать эти маленькие утилиты на C++,
ставя работоспособность системы в зависимость от колебаний
C++ ABI. Конечно, у всех разработчиков свои предпочтения,
а иметь библиотеку имени себя в дистрибутиве -- вообще шик. ;)
Но то, что я вижу в libing, можно было не напрягаясь
сделать в C, призвав на подмогу glib2 и libxml2.
Там, где не нужны классовые иерархии, C++ есть стрельба
из пушки по воробьям. Вдобавок, если и дальше пользоваться
расхожими метафорами, из этой же пушки легко прострелить
себе ногу.

-- 
Stay tuned,
  MhZ                                     JID: mhz на altlinux.org
___________
Hodie natus est radici frater.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?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/20030329/5c4a930c/attachment-0001.bin>


Подробная информация о списке рассылки Devel