openSUSE projekti arendajad teatasid, et nad tagavad korduvate build'ide toetuse openSUSE Factory hoidlas, mis rakendab pideva versiooniuuenduse mudelit (rolling-uuendused) ja teenib aluseks openSUSE Tumbleweed jaotuse loomisele. openSUSE Factory build-konfiguratsioon võimaldab nüüd veenduda, et pakendites levitatavad binaarfailid on kokku pandud esitatud lähtekoodidest ning ei sisalda peidetud muudatusi. Näiteks võib iga kasutaja isiklikult kontrollida, et pakutavad build'id vastavad bititasemel nendele build'idele, mis on kokku pandud iseseisvalt lähtekoodidest.
Korduvate build'ide koostamisel arvestatakse selliste nüanssidega nagu sõltuvuste täpne vastavus, muutumatu koostisosade ja build-tööriistade versioonide kasutamine, identne valikute ja vaikeseadete komplekt, failide buildimise järjekorra säilitamine (samade sortimismeetodite rakendamine), kompilatori poolt muutumatute abiteavet sisaldava teabe lisamise keelamine, nagu juhuslikud väärtused, viidatud failiteed ja buildimise kuupäeva ja aja andmed.
Binaarsüsteemi identiteedi kontrollimise võimalus vähendab sõltuvust ainult usaldusväärsest kogumisest, kuna kompilaatori või kogumistööriistade kompromiteerimine võib viia varjatud tagavarade sisestamiseni. Näiteks kasutas openSUSE arendajatele korduvate kogumiste tegemine, et välistada pahatahtlikud muudatused, mis võisid tekkida repostiitriumis pärast xz paketi tagasihoidmise juhtumit (kompromiteeritud teek liblzma, mida kasutati GCC koodi arhiivi lahtipakkimiseks, oleks võinud GCC koodis teha muudatusi, mis oleks saanud sisestada pahatahtlikke elemente kokku pandud rakendustesse).
Factory repo ei ole mõeldud lõppkasutajatele ja seda kasutavad peamiselt jaotuse arendajad, kuna selle sisu ei pruugi igal ajal olla stabiilne. Factory'sse lisatavad süsteemipaketid läbivad automatiseeritud testimise openQA abiga. Pärast testimise ja sõltuvuste kooskõla kontrollimise lõpetamist sorteeritakse sisu mitu korda nädalas peegeldesse ning loodud oleku lõige avaldatakse openSUSE Tumbleweedina.
Allikas: opennet.ru
