[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#26062: Spurious "environment variable may be needed" output
From: |
Ludovic Courtès |
Subject: |
bug#26062: Spurious "environment variable may be needed" output |
Date: |
Sat, 18 Mar 2017 11:33:33 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) |
Hi!
address@hidden (Taylan Ulrich "Bayırlı/Kammer") skribis:
> After some poking around, I found the issue; it's the following in the
> guix-0.12.0 recipe:
>
> (wrap-program (string-append out "/bin/guix")
> `("GUILE_LOAD_PATH" ":" prefix (,path))
> `("GUILE_LOAD_COMPILED_PATH" ":" = (,path)))
>
> As you see, it sets GUILE_LOAD_COMPILED_PATH to an absolute value rather
> than prefixing it. So whenever I execute 'guix package ...' from the
> shell, the installed wrapper overrides my correct value of
> GUILE_LOAD_COMPILED_PATH with something insufficient.
Oh, good catch!
> FWIW, it overrides it with the following (split for readability):
>
> "/gnu/store/f4pw2jr2ial53awa34rjj3wb4b4k3nag-guile-json-0.6.0/share/guile/site/2.0:
> /gnu/store/y9k9l62cf8hhr5m3np3756swrbxws0dl-guile-ssh-0.10.2/share/guile/site/2.0:
> /gnu/store/iyvx2rpyndi3k7dzbl4jnv7k6ddkx88a-gnutls-3.5.8/share/guile/site/2.0"
>
> Should the 'wrap-program' call simply use 'prefix' instead of '='? I'm
> not sure if there's a reason it uses '='.
Above the ‘wrap-program’ call, there’s this comment:
;; Ignore user settings so that a bogus
;; GUILE_LOAD_COMPILED_PATH does not prevent use of
;; 'guix', notably when it contains entries pointing to
;; incompatible .go files as reported at
;;
<https://lists.gnu.org/archive/html/guix-devel/2016-03/msg01261.html>.
Since 2.0.12, Guile skips invalid .go files, so this problem is gone.
So I think you can go ahead and change '= to 'prefix there.
Thanks!
Ludo’.