>>> Никогда не понимал людей, которые пишут такие вещи на С
>> насколько я понимаю, pkgng - не надстройка, а полная замена всех pkg_*
>> утилей, причем на уровне базовой системы. На чем это может быть
>> написано кроме С - не представляю.
> Судя по ману это не столько замена pkg_install, сколько претензия на yum/apt. Судя по ману это как раз два-в-одном. Без существенной переделки pkg_install было бы невозможно сделать подобие apt-a/yum-a/zypper-a.
> В одном флаконе так сказать.
> В pkgsrc pkg_install написан на С и кода примерно 14000 строк,
> то есть в 3 раза меньше,
Вы внутрь заглядывали? там костыль на костыле. Вплоть до запуска утилит из под сишного кода. Очевидно писалось наспех.. Как говорится.. нет ничего более постоянного..
> это если не считать совершенно неуместного
> здесь sqlite3. Если с ним, то получается в 13(!!!) раз меньше кода.
очень даже уместного. При распухании базы хотя бы до пятисот пакетов pkg_install начинает заметно тормозить. sqlite3 мне кажется оптимальным вариантом. В 3.7 версии даже запилили WOL.
> pkgsrc-ый pkg_install -- это примерный аналог dpkg/rpm, (только лучше :-) )
Не лучше. через pkg_install невозможно обновить пакет не развалив пакетную базу. Тупо не хватает нормальных зависимостей на библиотеки/ориджины. Отсутствие инфы о том с какими KNOB-ами собран пакет. Приходилось костылить. Собсно portupgrade - попытка вылечить зубы через опу(и ему это даже удается). остальные менеджеры еще менее удачны.
> Этой базы достаточно для написания поверх нормального high-level менеджера пакетов.
Если и так всё переделывать, то какая разница. При нормальной архитектуре затраты на написание на Си менеджера-обертки примерно одинаковые по сравнению с шеллом. Если не меньше.
> Нет. Сборку я вообще не трогаю, это отдельная песня.
> Высокоуровневый -- это когда одной командой
> обеспечивается согласованность установленных пакетов.
> К dpkg/rpm/pkg_{add,delete} это не относится, и не должно относится.
Нет смысла. т.к. pkg_* нужно было выкинуть целиком.