forked from NixOS/reproducible.nixos.org
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
52 lines (48 loc) · 1.99 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!DOCTYPE html>
<html lang="en">
<head>
<title>Nix Reproducible Builds</title>
<link rel="stylesheet" href="styles/index.css">
<style>
body {
padding: 3em;
}
</style>
</head>
<body>
<h1>Nix Reproducible Builds</h1>
<p>
Because a Nix derivation has deterministic references to all
of its dependencies, and the build is being ran in a sandbox,
Nix is an excellent starting point for achieving bit-by-bit
<a href="https://reproducible-builds.org/">Reproducible Builds</a>.
</p>
<p>
However, this is not sufficient in itself: builds may still include
timestamps or have other nondeterminisms. Such problems are tracked
in the <a href="https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%226.topic%3A+reproducible+builds%22">'reproducible builds' issue tag</a>.
You can report a new issue using the <a href="https://github.com/NixOS/nixpkgs/issues/new?assignees=&labels=0.kind%3A+enhancement%2C6.topic%3A+reproducible+builds&template=unreproducible_package.md&title=">issue template</a>.
</p>
<p>
To check whether you can reproduce a package on your machine,
you can use <code>nix-build '<nixpkgs>' -A hello --check --keep-failed</code>.
On failures, you can use <a href="https://diffoscope.org">diffoscope</a>
to analyze the differences in the outputs of the two builds. To view
the build log of the build that produced the artifact in the binary cache you can use <code>nix-store --read-log $(nix-instantiate '<nixpkgs>' -A hello)</code>.
</p>
<p>
As a general health check, we are producing reports on the
reproducibility of the packages that make up the build closure
of our minimal installation ISO, and the Gnome one. Note that
this not only includes all packages that make it into the ISO,
but also all build-time dependencies of those packages:
</p>
<ul>
<li><a href="nixos-iso-minimal-r13y">Minimal ISO</a>
<li><a href="nixos-iso-gnome-r13y">Gnome ISO</a>
</ul>
<p>
The source for this page can be found <a href="https://github.com/NixOS/reproducible.nixos.org">here</a>.
</p>
</body>
</html>