Subject: bug#32439: guix pull as root generates too many errors.

From: [email-masked] (Ludovic Courtès)
Date: Mon, 20 Aug 2018 11:45:11 +0200

Hello,

fis trivial <[email-masked]> skribis:

> Leo Famulari writes:
>
>> On Tue, Aug 14, 2018 at 07:41:14PM +0000, fis trivial wrote:
>>> Running guix pull -l as root user generates many warnings and errors. I
>>> attached the first 1000 lines of stderr logging in this mail.
>>>
>>
>>> ;;; WARNING: loading compiled file /root/.config/guix/current-17-link/lib/guile/2.2/site-ccache/guix/ui.go failed:
>>> ;;; ERROR: In procedure make_objcode_from_file: bad header on object file: "\x7fELF\x02\x01\x01??\x00\x00\x00\x00\x00\x00\x00\x00"
>>
>> I'm not an expert on Guile or the new `guix pull`. However, I think that
>> `guix pull` takes its Guile from the environment, because `guix pull -l`
>> doesn't work for me when there is no Guile in PATH.
>>
>> Those errors look like a mismatch between Guile versions 2.0 and 2.2.
>> Which Guile do you have available in the environment where you see that
>> error?
>
> As root user, it's [email-masked]. Indeed, installing [email-masked] from Guix fixes
> the problem. Thanks for your insight. :)

What command did you run to get the errors about?  Could you also show:

  which guix
  echo $GUILE_LOAD_PATH
  echo $GUILE_LOAD_COMPILED_PATH

?

The new ‘guix pull’ provides a “self-contained Guix” in the sense that
it brings all its dependencies, including Guile.  If you look at the top
of the ‘guix’ file, you’ll see that it specifies exactly the Guile
version that it needs:

--8<---------------cut here---------------start------------->8---
$ head -1 ~/.config/guix/current/bin/guix
#!/gnu/store/p9wm67w3rfw3hlb9iljgvsfn84mz4w9d-guile-2.2.4/bin/guile --no-auto-compile
--8<---------------cut here---------------end--------------->8---

Thus, Guile version mismatches like you experienced should normally not
happen.

Thanks for your report,
Ludo’.