mirror of
https://github.com/NixOS/nix
synced 2025-07-06 21:41:48 +02:00
Properly normalize the content-addressed paths
Make sure that their timestamp are always normalized. Otherwise, strange − and non-deterministic − things might happen, like https://github.com/NixOS/nixpkgs/issues/121813 Fix #4775
This commit is contained in:
parent
fe3a10a9b2
commit
bf485dcf46
3 changed files with 19 additions and 4 deletions
|
@ -2300,10 +2300,6 @@ void LocalDerivationGoal::registerOutputs()
|
|||
sink.s = make_ref<std::string>(rewriteStrings(*sink.s, outputRewrites));
|
||||
StringSource source(*sink.s);
|
||||
restorePath(actualPath, source);
|
||||
|
||||
/* FIXME: set proper permissions in restorePath() so
|
||||
we don't have to do another traversal. */
|
||||
canonicalisePathMetaData(actualPath, -1, inodesSeen);
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -2452,6 +2448,10 @@ void LocalDerivationGoal::registerOutputs()
|
|||
},
|
||||
}, output.output);
|
||||
|
||||
/* FIXME: set proper permissions in restorePath() so
|
||||
we don't have to do another traversal. */
|
||||
canonicalisePathMetaData(actualPath, -1, inodesSeen);
|
||||
|
||||
/* Calculate where we'll move the output files. In the checking case we
|
||||
will leave leave them where they are, for now, rather than move to
|
||||
their usual "final destination" */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue