NetBSD: Reproduzierbare Builds für amd64 und sparc64 erreicht

NetBSD-Entwickler Christos Zoulas hat am 20. Februar 2017 vollständig reproduzierbare Builds für amd64 und sparc64 gemeldet. Gemeint sind bitgenau identische Installationsmedien aus demselben Quellstand. Eine Aussage über sämtliche unterstützten Architekturen ist das nicht.

Zeitstempel, Pfade und Reihenfolge vereinheitlichen

Zoulas beschreibt Änderungen an Archiven, Dateisystemabbildern und Werkzeugen. Zeitstempel, wechselnde Verzeichnisreihenfolgen und lokale Pfade in Debug-Informationen konnten unterschiedliche Ergebnisse verursachen. Das Cross-Build-System build.sh baut zunächst die benötigten Werkzeuge aus bekannten Quellen und anschließend das System.

Mit build.sh -P wird der reproduzierbare Modus aktiviert. Dabei setzt das Skript MKREPRO auf yes und verwendet den neuesten Quelldatei-Zeitstempel für MKREPRO_TIMESTAMP. Auch Programme, die Uhrzeit oder Rechnerdaten in ihre Ausgabe übernehmen, mussten angepasst werden.

Weitere Build-Umgebungen stehen noch auf der Prüfliste

Weitere Hostsysteme, Dateisysteme, Cross-Builds und unprivilegierte Builds sollen folgen. Reproduzierbarkeit macht Ergebnisse vergleichbar, beweist allein aber weder Fehlerfreiheit noch die Sicherheit des Quellcodes.

Für automatisierte Toolchains sind Ablaufsteuerung und identische Ausgabe getrennte Aufgaben. GNU Make 4.2 hatte zuvor die Jobserver-Schnittstelle für parallele Builds dokumentiert. NetBSD untersucht hier hingegen, welche Umwelteinflüsse trotz gleicher Quellen unterschiedliche Binärdateien erzeugen.

Weitere News

Weitere News

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein