1 Punkte von GN⁺ 2023-10-30 | 1 Kommentare | Auf WhatsApp teilen
  • Das NixOS-Team hat den von Hydra veröffentlichten nixos-minimal-ISO erfolgreich unabhängig und bitgenau identisch nachgebaut.
  • Der wichtigste Vorteil von Reproducible Builds besteht darin, eine verlässliche Methode bereitzustellen, um zu überprüfen, dass in der Build-Pipeline keine Manipulation stattgefunden hat.
  • Das Team hat alle im ISO enthaltenen Pakete reproduziert, den Build des ISO selbst sowie die zum Bauen des ISO benötigten Pakete, die nicht im ISO enthalten sind.
  • Die Reproduktion wurde erreicht, indem eine neue VirtualBox-Maschine mit NixOS 20.03 gestartet, das NixOS-Repository geklont, ein bestimmter Commit ausgecheckt und eine Reihe von Befehlen zum Bauen des ISO ausgeführt wurden.
  • Das Team räumt ein, dass dieser Ansatz ein potenzielles Bootstrap-Problem hat, einschließlich der Möglichkeit einer Backdoor in der OVA von 2020 oder im heruntergeladenen Git. Dennoch liefert dieser Test weiterhin ein hohes Maß an Vertrauen in die Reproduzierbarkeit des ISO.
  • Das Team hatte zuvor angekündigt, dass das Minimal-ISO zu 100 % reproduzierbar sei, doch Probleme mit dem Hydra-Cache und der Art der ISO-Erzeugung führten zu Unterschieden. Diese Probleme sind nun behoben.
  • Zu den künftigen Arbeiten gehören das Entfernen der im Reproduktionsprozess verwendeten Hacks, das Sicherstellen der Reproduzierbarkeit weiterer Pakete, der Aufbau einer Infrastruktur für regelmäßige unabhängige Nachbauten sowie die Entwicklung von Werkzeugen zum Teilen und Verwenden von Build-Nachweisen.
  • Das Team lädt andere dazu ein, sich an den Bemühungen zu beteiligen, und verweist für weitere Informationen auf das GitHub-Projektboard und die Website von NixOS Reproducible Builds.

1 Kommentare

 
GN⁺ 2023-10-30
Hacker-News-Kommentar
  • Der Neuaufbau einer minimalen ISO aus dem Quellcode gilt als wichtiger Erfolg, um ein System aus reproduzierbaren Quellen aufbauen zu können.
  • Guix hat einen bemerkenswerten Meilenstein erreicht, indem es die komplette Compiler-Toolchain aus einem einzigen reproduzierbaren 357-Byte-Binärprogramm gebootstrapped hat.
  • Es wird die Frage gestellt, warum Reproduzierbarkeit bei der Software-Kompilierung nicht das Standardverhalten ist.
  • Es wurde vorgeschlagen, dass bei NixOS wie bei anderen Linux-Distributionen Maintainer Pakete signieren sollten, um sicherzustellen, dass der eingereichte und geprüfte Code mit dem tatsächlich gebauten Code identisch ist.
  • Es gibt Verwirrung über die Reproduzierbarkeit von NixOS, da diese als Kernfunktion des Systems angesehen wurde.
  • Das OpenBSD-Projekt fällt durch einen konträren Ansatz auf, bei dem jede Installation einzigartig ist und zufällige Adress-Offsets besitzt.
  • Es wurde klar erläutert, dass sich die Reproduzierbarkeit von Nix/NixOS/Nixpkgs nur auf den Quellcode bezieht und sich Binärdateien von Build zu Build ändern können.
  • Es wird erwähnt, dass andere Systeme wie Guix, Archlinux und Debian die Binär-Reproduzierbarkeit besser umsetzen als Nix/NixOS/Nixpkgs.
  • Dieser Meilenstein wird als beeindruckend gelobt, zugleich werden zusätzliche Informationen dazu erbeten, wie die ISO erzeugt wurde.
  • Es wird angeregt, dass diese Entwicklung helfen könnte, das in Ken Thompsons "Reflections on Trusting Trust" diskutierte Problem kompromittierter Compiler mit Hintertüren zu lösen.
  • Da Zeitstempel oft in Binärdateien landen, wird gefragt, ob man für diesen Prozess die Systemzeit fälschen muss.
  • Es wird um einen Vergleich dieser Entwicklung mit Fedora Silverblue, Ansible und Fedora Silverblue + Ansible innerhalb des Red-Hat-Ökosystems gebeten.