Разработчиците на проекта openSUSE обявиха, че ще осигурят подкрепа за повтарящи се сборки в репозитория openSUSE Factory, който прилага модела на непрекъснат цикъл на обновление на версиите на софтуера (rolling updates) и служи като основа за изграждането на дистрибуцията openSUSE Tumbleweed. Конфигурацията на сборката openSUSE Factory сега позволява да се увери, че разпространяваните в пакети бинарни файлове са събрани от предоставените изходни текстове и не съдържат скрити промени. Например, всеки потребител може лично да провери, че предлаганите сборки битово съвпадат със сборките, събрани лично от изходните текстове.
При формирането на повтарящи се сборки се взимат предвид такива нюанси, като точно съответствие на зависимостите, използване на неизменим състав и версии на сборъчните инструменти, идентичен набор от опции и настройки по подразбиране, запазване на реда на сборка на файловете (прилагане на същите методи за сортиране), изключване на добавянето на непостоянна служебна информация от компилатора, такава като случайни стойности, линкове към файлови пътища и данни за датата и часа на сборката.
Възможността да се провери идентичността на бинарната сборка позволява да не се разчита само на доверие в инфраструктурата за сборка, компрометирането на компилатора или на сборъчните инструменти, в която може да доведе до вмъкване на скрити залагания. Например, повтарящите се сборки са използвани от разработчиците на openSUSE, за да се изключат злонамерени модификации, които могат да се появят в репозиторията в резултат на инцидент с добавяне на бекдор в пакета xz (компрометирана библиотека liblzma, използвана за разпаковане на архива с кода на GCC, потенциално е могла да въведе изменения в кода на GCC, които да се използват за вмъкване на злонамерени елементи в събирани приложения).
Репозиторият Factory не е предназначен за крайни потребители и основно се използва от разработчиците на разпространения, тъй като не е гарантирана стабилност по всяко време. Добавяните в Factory системни пакети преминават през автоматизирано тестване с инструмента openQA. След приключване на тестването и проверка на консистентността на зависимостите, съдържанието на репозитория се синхронизира с огледалата няколко пъти седмично и формулираният срез на състоянието се публикува като openSUSE Tumbleweed.
Източник: opennet.ru
