NixOSプロジェクトチームは6月21日、NixOSの最小ISOイメージ(nixos.iso_minimal.x86_64-linux)について、どの環境でビルドしても、まったく同じバイナリイメージを100%再現できるようになったことを報告した。
- Is NixOS Reproducible?
「reproducible build(再現性のあるビルド)」はここ数年、とくにセキュリティの観点から普及してきた概念で、特定のソースコードから生成されるバイナリは、いつ、誰が、どんな環境でビルドしたとしてもまったく同一であることが求められる。悪意あるコードがリリース後に含まれているかもしれない場合でも、ビルドの再現性が担保されていれば、ソースコードからリビルドしたバイナリと配布物を照合することで、容易に検証が可能になる。現在、GoogleなどがスポンサードするNPO Reproducible Buildsが積極的にビルドの再現性を推進しており、DebianやFedora、Arch Linuxなどもこの動きに追随している。
- ja/ReproducibleBuilds/About -Debian Wiki
こうした動きの中で、NixOSの今回のマイルストーンは最小イメージ構成とはいえ、OSパッケージ全体のビルドを100%再現可能にしたという点で非常に高く評価されている。NixOSがベースにしているパッケージマネージャ「Nix」はその特徴として「Reproducible(再現性)」「Declarative(宣言型)」「Reliable(信頼性)」を挙げており、もともとパッケージの再現性(独立性)を重要視していたことも今回の成功に大きく寄与しているといえる。
今回は最小構成のイメージで1500のパス(数百程度のパッケージ?)の再現に成功したNixOSチームだが、はやくも次のゴールを「GNOME ISO版の100%再現」に設定しており、reproducible buildの可能性をより深く突き詰めていく。