[Nix-dev] Why is the /nix/store location hardcoded?

David Soergel dev at davidsoergel.com
Thu Apr 22 00:51:15 CEST 2010


Is there some compelling reason why the location of the nix store is fixed at compile time, and why nix-push/nix-pull can only work among machines that agree on the location of the store?

I'm guessing the trouble is that the .drv files contain absolute paths, so the closure hash is sensitive to the store location.  But all of the paths begin with the store path anyway, so why not just keep them relative?  Then the store location could be provided at runtime, could be in a user's home directory (not requiring root access as "/nix/store" does), and channels would work anyway, since the derivation hashes would be consistent.

That seems to me like the conventional way to do things-- what am I missing?  Thanks for any insights,

-ds


_______________________________________________________
David Soergel                            (650) 303-5324
dev at davidsoergel.com        http://www.davidsoergel.com
_______________________________________________________




More information about the nix-dev mailing list