←back to thread

Nix Derivation Madness

(fzakaria.com)
184 points birdculture | 3 comments | | HN request time: 0.001s | source
Show context
beardsciences ◴[] No.45772979[source]
If I understand this correctly, upcoming Ca-derivations will fix this by making these situations expected, properly-handled cases rather than a weird bug? https://nixos.wiki/wiki/Ca-derivations
replies(3): >>45773374 #>>45773430 #>>45773561 #
edolstra ◴[] No.45773561[source]
To be clear, there is no bug here: derivers are simply not uniquely determined in the presence of fixed-output derivations, which is by design. That's even more true with CA derivations.

CA derivations also introduce the opposite situation, namely that the same derivation can produce different output paths for different users (if the build is not bitwise reproducible).

replies(1): >>45773589 #
1. setheron ◴[] No.45773589[source]
pick your poison: 1:N or N:1 ;P
replies(1): >>45774695 #
2. Ericson2314 ◴[] No.45774695[source]
It's both, multiple derivations can produce the same (content-addressed) store object, and the derivations may not be reproducible and produce different (content-addressed) store objects each time.

The reality of executing arbitrary programs on non-deterministic computers is, unfortunately, N:M!

(Cue deterministic WASM derivations or something.)

replies(1): >>45777729 #
3. huem0n ◴[] No.45777729[source]
> (Cue deterministic WASM derivations)

"Rah Rah, this is why we need deterministic wasm derivations!" - Me

(There you go Ericson) Relevant links: https://github.com/WebAssembly/design/blob/main/Nondetermini...