Subject: Re: bug#33691: pre-inst-env: "no code for module (gcrypt hash)"

From: Efraim Flashner <[email-masked]>
Date: Tue, 11 Dec 2018 09:14:44 +0200

On Sun, Dec 09, 2018 at 02:41:07PM -0800, Chris Marusich wrote:
> Hi,
> 
> I tried reconfiguring my system recently using pre-inst-env, using
> commit 08861d259b453442c38fe93477bc62d2080b1442.  I got this error:
> 
> --8<---------------cut here---------------start------------->8---
> $ sudo ./pre-inst-env guix system --fallback reconfigure ~/config.scm 
> Password: 
> Backtrace:
> In ice-9/boot-9.scm:
>   2726:13 19 (_)
> In ice-9/threads.scm:
>     390:8 18 (_ _)
> In ice-9/boot-9.scm:
>   2994:20 17 (_)
>    2312:4 16 (save-module-excursion _)
>   3014:26 15 (_)
> In unknown file:
>           14 (primitive-load-path "guix/store" #<procedure 22f46a0 a…>)
> In guix/store.scm:
>      20:0 13 (_)
> In ice-9/boot-9.scm:
>    2874:4 12 (define-module* _ #:filename _ #:pure _ #:version _ # _ …)
>   2887:24 11 (_)
>    222:29 10 (map1 (((guix utils)) ((guix config)) ((guix #)) ((…)) …))
>    222:29  9 (map1 (((guix config)) ((guix memoization)) ((guix …)) …))
>    222:29  8 (map1 (((guix memoization)) ((guix serialization)) (#) …))
>    222:29  7 (map1 (((guix serialization)) ((guix monads)) ((# #)) …))
>    222:29  6 (map1 (((guix monads)) ((guix records)) ((guix #)) (#) …))
>    222:29  5 (map1 (((guix records)) ((guix base16)) ((guix #)) (#) …))
>    222:29  4 (map1 (((guix base16)) ((guix base32)) ((gcrypt #)) # …))
>    222:29  3 (map1 (((guix base32)) ((gcrypt hash)) ((guix #)) (#) …))
>    222:17  2 (map1 (((gcrypt hash)) ((guix profiling)) ((rnrs #)) # …))
>    2803:6  1 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _ …)
> In unknown file:
>            0 (scm-error misc-error #f "~A ~S" ("no code for modu…" …) …)
> 
> ERROR: In procedure scm-error:
> no code for module (gcrypt hash)
> --8<---------------cut here---------------end--------------->8---
> 
> I expected pre-inst-env to make all the necessary dependencies
> available.  I was surprised that the guix command was unable to find
> (gcrypt hash), even though I thought pre-inst-env would make it
> available.
> 
> Is this a bug, or am I doing something wrong?
> 

I come across this sometimes. I don't have a 100% method of fixing it,
but I normally run:

guix pull
guix environment --pure guix
make clean-go
./bootstrap
./configure --localstatedir=/var --sysconfdir=/etc
exit
./pre-inst-env guix environment guix -- make

-- 
Efraim Flashner   <[email-masked]>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted