summary refs log tree commit diff
path: root/.github/ISSUE_TEMPLATE/unreproducible_package.md
blob: a868c26ca54b8ff53c653286e3d9aa02945035e0 (plain) (blame)
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
---
name: Unreproducible package
about: A package that does not produce a bit-by-bit reproducible result each time it is built
title: ''
labels: [ '0.kind: enhancement', '6.topic: reproducible builds' ]
assignees: ''

---

Building this package twice does not produce the bit-by-bit identical result each time, making it harder to detect CI breaches. You can read more about this at https://reproducible-builds.org/ .

Fixing bit-by-bit reproducibility also has additional advantages, such as avoiding hard-to-reproduce bugs, making content-addressed storage more effective and reducing rebuilds in such systems.

### Steps To Reproduce

```
nix-build '<nixpkgs>' -A ... --check --keep-failed
```

You can use `diffoscope` to analyze the differences in the output of the two builds.

To view the build log of the build that produced the artifact in the binary cache:

```
nix-store --read-log $(nix-instantiate '<nixpkgs>' -A ...)
```

### Additional context

(please share the relevant fragment of the diffoscope output here,
and any additional analysis you may have done)