Eric Bavier <[email protected]> skribis: > On 2015-10-07 11:07, Federico Beffa wrote:
[...] >> * If I understand correctly, the configuration files of dependencies >> are >> copied in a unique directory for each package. Instead of copying >> would a symlink work? (There are literally thousands of packages on >> Hackage and hopefully Guix will get more of them.) > > I don't know if symlinking is allowed across store directories, though > if it is, that'd be something to try. Yes it’s allowed. That’s what ‘union-build’ (the procedure that builds profiles) does. >> * Some Haskell libraries have a rather large list of dependencies. For >> this reason I can imagine that in some situations GHC_PACKAGE_PATH >> could grow rather long. > > Not every package would end up with an entry in GHC_PACKAGE_PATH, only > those that are installed, or declared inputs. Dependent libraries > would be found when GHC examines the package databases of those > packages. > >> This thought made me wonder if there is a >> maximum length to the value of environment variables that we could >> possibly hit. > > We've already pushed this quite far. E.g. the hydra package creates a > rather sizable PER5LIB path. Nice. :-) AFAIK there’s no limit on the size of an environment variable’s value. However, it’s a good idea to keep search paths small, to reduce the number of ‘stat’ calls that have to be done before a given file is found. Using a symlink forest is a good way to achieve that. Thanks, Ludo’.
