Closed raboof closed 2 years ago
the node called kitty contains all store paths which are depended upon by the same gc roots as kitty. For this reason, an edge kitty -> apache does not mean that kitty depends on apache, only that something that has the same set of dependent gc roots as kitty has such an edge. Actually the name of interior nodes is arbitrary and sometimes meaningless. So if I understand correctly, what you describe is compatible with intended behavior.
ah, clearly I misunderstood
I'm sorry for such a vague/hard to reproduce report, but I wanted to write this down as I'm not sure when I'll be able to dig in properly: on my system, nix-du (invoked as
nix-du -s=500MB | tred | dot -Tsvg > store.svg
) seems to report an incorrect intermediate dependency: it shows an edge from/run/current-system
tokitty-0.25.2
, and fromkitty-0.25.2
toapache-maven-3.8.6
.Now sure enough
/run/current-system
depends onapache-maven-3.8.6
:... but not via kitty:
This is 0.6.0 on nixpkgs fd54651f5ffb4a36e8463e0c327a78442b26cbe7