Ludovic Courtès writes: > Christopher Baines skribis: > >> This new procedure is similar to open-pipe* in (ice-9 popen), but using >> run-container from (gnu build linux-container). >> >> * gnu/build/linux-container.scm (start-child-in-container): New procedure. > > [...] > >> +(define* (start-child-in-container command >> + #:key read? write? >> + (root 'temporary) >> + (mounts '()) >> + (namespaces %namespaces) >> + (host-uids 1) >> + (extra-environment-variables '())) > > Please add a docstring. :-) > > I’d change (extra-environment-variables '()) to: > > (environment-variables (environ)) > > I always find it too hard to reason about “extra” thing; it’s just more > convenient as an interface to specify the whole thing rather than a list > of “extras”. I had a go at this, but I think trying to copy the environment variables from the host Guix to the inferior one caused problems, at least this backtrace appears when calling open-inferior/container and I'm guessing it comes from the inferior guix. I think calling it environment-variables and having it be '() is OK, the only change I can see being made elsewhere is that open-inferior/container adds HOME=/tmp, and that's just to avoid issues with (guix profiles). Does that make sense? Backtrace: 6 (apply-smob/1 #) In ice-9/boot-9.scm: 705:2 5 (call-with-prompt ("prompt") # #) In ice-9/eval.scm: 619:8 4 (_ #(#(#))) 293:34 3 (_ #(#(#) ("/gnu/store/ain1rvg7vrrcr85v0fgpyjm8k2sflxpz-guix-1.0.1-15.0984481/bin/.guix-real" "repl" "-t" "machi?"))) 159:9 2 (_ #(#(#) ("/gnu/store/ain1rvg7vrrcr85v0fgpyjm8k2sflxpz-guix-1.0.1-15.0984481/bin/.guix-real" "repl" "-t" "machi?"))) In ice-9/boot-9.scm: 2803:6 1 (resolve-interface _ #:select _ #:hide _ #:prefix _ #:renamer _ #:version _) In unknown file: 0 (scm-error misc-error #f "~A ~S" ("no code for module" (guix ui)) #f)