metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2014-08-24 08:35 pm

Отслеживание зависимостей пакетов при сборке дистрибутива

http://ru.wikipedia.org/wiki/Rosa_Linux
http://techquisitor.livejournal.com/236159.html?thread=617599#t617599
Вычитал по ссылке такое: "Ещё одна фича сборочной системы - циклический контроль зависимостей. К выходу 2012.1 наши инженеры проделали то, что есть, пожалуй, только у ALT Linux. А именно, все зависимости теперь жёстко контролируются и весь софт в репозитории не имеет внешних зависимостей. Т.е. ситуация, когда ты ставишь какую-либо программу, а она тебе говорит, что не хватает libfoo, потому что она вообще в каком-то другом репозтории лежит или её нет в дистрибутиве - теперь исключена"

Это что, серьезно, нигде такого больше нету? Ну, в смысле, автоматом пройтись по всем пакетам и проверить, что их зависимости за пределы данного репозитория не выходят? Вроде же самоочевидная фича.

[identity profile] kostyasha.livejournal.com 2014-08-24 11:31 pm (UTC)(link)
Интересно? Сходи в первоисточники и разберись, хотя бы с тем что есть, а не гадай.
Даже не знаю как этот поток сознания комментировать.
1) Алгоритм сборки может быть воспроизводимым и невоспроизводимым.
2) В OBS после каждого собранного пакета все пересчитывается, алгоритм решения колец не описан, а код на перле я не осилил.
3) То как запакечено и на основе чего строится дерево. Федора/RH получают зависимости раскрывая макросы, которые связаны с окружением из которого они раскрываются что дает рекурсивную сложность. OBS библиотекой строит на основе информации спек файла и конфигурации project где эти спеки лежат.
4) Если взять тему multiarch то вы вообще забьете и будете рады тому что есть и тому как это работает.

[identity profile] sbj-ss.livejournal.com 2014-08-24 11:37 pm (UTC)(link)
Я бы предпочёл услышать мнение того, кому адресовался комментарий. Поэтому отвечу только по п.1.
Если алгоритм сборки невоспроизводим, как вы собираетесь это тестировать?

[identity profile] kostyasha.livejournal.com 2014-08-24 11:41 pm (UTC)(link)
Домучались, чувака порвало, сделали https://securityblog.redhat.com/2013/09/18/reproducible-builds-for-fedora/