On 01-08-2022 14:49, Andrew Tropin wrote: >> However this one is incorrect as it would lead (ice-9 string-fun) from >> the host Guile to be imported into the build environment, thereby making >> the result dependent on the version of Guile that is used “outside” (you >> may have seen a warning like “importing (ice-9 string-fun) from the >> host”.) > Why so? I expected modules closure to be compiled on build side and > provided to activation script via preset load-path. This is true, and this causes the problem that Ludo' describes: Two problems: * (ice-9 string-fun) is part of Guile, so compiling it again is pointless (and potentially harmful, if ice-9/string-fun.scm contains a reference /gnu/store/.../some-target-specific-library.so) * a form of non-determinism and non-reproducibility -- you are copying the modules from the Guile that 'guix' is run with, instead of always using the modules from the Guile that is defined inside Guix. * additionally, maybe the inside-Guix and what-Guix-is-compiled-with Guile expect different behaviour of (ice-9 string-fun), causing bugs Greetings, Maxime.