[devel] apt-conf-branch и apt-conf-sisyphus
Leonid Krivoshein
klark.devel на gmail.com
Ср Фев 21 03:01:37 MSK 2018
По мотивам багов #34510 и #30806, которые теперь точно можно закрыть.
Мне кажется, у нас небольшая проблема. Надеюсь, решаемая. Речь о
пакетном наполнении образов, собираемых mkimage. Сам он, как оказалось,
не причём, это особенность APT'а и следствие mkimage-profiles. Ну и,
конечно, наша традиция использовать ВЕЗДЕ одинаковые
/etc/apt/pkgpriorities из apt-conf-{branch,sisyphus}, точнее, не
использовать их по назначению ВООБЩЕ. Но, давайте по-порядку...
В mate-default была приколочена жёсткая зависимость на firefox. Это
мешало сделать специальную сборку с firefox-gost, поэтому баг закрыли,
поменяв зависимость на webclient. На последних регулярках в сборку с
MATE стал приезжать браузер rekonq, ко всему прочему нерабочий. Понятное
дело, тащил он за собой кучу всего Qt'шного и KDE'шного. А главное,
причину искали долго, поскольку бага очевидно затрагивала не только
регулярки, но и почти все наши основные дистрибутивы с MATE.
Причиной оказалась в зависимости xsane от webclient. Если ставить так:
apt-get install xsane firefox
То в систему попадает ещё и rekonq. А если так:
apt-get install firefox xsane
То не попадёт. То есть, от перемены мест слагаемых наполнение
дистрибутивного образа явно зависит, причём так работает наш apt.
Регулировать порядок следования пакетов в финальном списке, формируемом
в m-p и передаваемом mki, на мой взгляд, чересчур проблематично. Но
подобных сторонних эффектов мы ещё встретим много, если не поменяем
подход к /etc/apt/pkgpriorities (у APT'а есть ещё PIN-priorities). При
помощи этой штуки регулировать предпочтения для того или иного
дистрибутива правильней, тогда и коллизий подобных станет на порядок
меньше. В нашем случае для дистрибутивов с MATE и Firefox:
echo " firefox" >> /etc/apt/pkgpriorities
apt-get install xsane firefox
Теперь без разницы, на каком месте xsane. Костыль, конечно. Но править
логику apt'а будет сложнее...
--
Best regards,
Leonid Krivoshein.
Подробная информация о списке рассылки Devel