Subject: Re: [bug#56758] [PATCH 0/2] Don't try to mkdir XDG_RUNTIME_DIR

From: Maxime Devos <[email-masked]>
Date: Tue, 2 Aug 2022 00:12:19 +0200

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.