-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Source roots result in /nix/store/<hash>-<hash>-source #10627
Copy link
Copy link
Open
Labels
breakingChanges we can't make without breaking old expressions, changing hashes, etcChanges we can't make without breaking old expressions, changing hashes, etcbugflakeslanguageThe Nix expression language; parser, interpreter, primops, evaluation, etcThe Nix expression language; parser, interpreter, primops, evaluation, etc
Description
Describe the bug
In a flake with a derivation attribute like
src = ./.;
the tree gets copied into the store as /nix/store/<hash1>-<hash2>-source. This is because (pre lazy-trees) the basename of the tree is /nix/store/<hash2>-source.
This double-copying is obviously undesirable, but we can't fix it without a breaking change (i.e. without changing derivation paths).
On lazy-trees, we can at least avoid writing /nix/store/<hash2>-source to disk, but we do need to hash the input to compute <hash2>. (See c5ae41d.)
Steps To Reproduce
- Go to '...'
- Click on '....'
- Scroll down to '....'
- See error
Expected behavior
A clear and concise description of what you expected to happen.
nix-env --version output
Additional context
Add any other context about the problem here.
Priorities
Add 👍 to issues you find important.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
breakingChanges we can't make without breaking old expressions, changing hashes, etcChanges we can't make without breaking old expressions, changing hashes, etcbugflakeslanguageThe Nix expression language; parser, interpreter, primops, evaluation, etcThe Nix expression language; parser, interpreter, primops, evaluation, etc