Linux Daily Topics

2021年6月29日 Is NixOS Reproducible? ―NixOS,最小イメージのビルドを100%再現可能に

この記事を読むのに必要な時間:およそ 1 分

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の可能性をより深く突き詰めていく。

著者プロフィール

階戸アキラ(かいとあきら)

起きてからまず海外ニュースサイトのハシゴをしないと1日を始められない海外ニュースウォッチャー。英語は英検準一級の資格を持ち,日本人と話すより英語圏の人のほうがウマが合う。