Hi, When two users run "guix pull" using the same commit, two different versions of "guix-latest" get built. This surprised me, and in any case it seems inefficient to build the same version of Guix two times. Why do two different derivations get built? Here's an invocation of "guix pull" as an unprivileged user: --8<---------------cut here---------------start------------->8--- $ guix pull ... Building from Git commit ed0f9f53abef57b9f33d3b2eada40375894bdff6... ... The following derivation will be built: /gnu/store/m3x8069x5aspc29m9ay7idndz0kpfxlb-guix-latest.drv copying and compiling to '/gnu/store/dn13gs9w16h5w6l77pnpbclqxnbyhh4m-guix-latest' with Guile 2.2.2... --8<---------------cut here---------------end--------------->8--- And here's an invocation of "guix pull" as root: --8<---------------cut here---------------start------------->8--- # guix pull ... Building from Git commit ed0f9f53abef57b9f33d3b2eada40375894bdff6... ... The following derivation will be built: /gnu/store/675pz9f4qz9dd4jikzcgzv62kjrxfhmg-guix-latest.drv copying and compiling to '/gnu/store/cvc0rf65s3mjw9rjps80ram3898qdws3-guix-latest' with Guile 2.2.2... --8<---------------cut here---------------end--------------->8--- I am surprised that these two invocations of "guix pull" build different derivations. I understand that the overall "guix pull" action requires side effects outside of the store which will be different depending on who invoked the command (e.g., to update the $HOME/.config/guix/latest symlink), but that stuff isn't performed by a derivation. I expect two derivations that build Guix (or any software component) from the same source to be identical, so I am surprised. I have looked at the source code for "guix pull," and I cannot find any obvious reason why the derivations should differ. Does anyone know why they differ? -- Chris