Subject: Re: bug#74250: emacs-guix: guix-pull invalid input error

From: Suhail Singh <[email-masked]>
Date: Wed, 20 Nov 2024 14:50:42 -0500

Christopher Howard <[email-masked]> writes:

> Hi, this is a little confusing since my example involved working outside
> of Emacs, running Scheme from the guix repl.

I am confused (as well).  I thought you were running the command via the
"*Guix REPL*" buffer created by emacs-guix.  Perhaps not?  I'll share
below some thoughts as well as reasons for my curiosity.  Please use
your judgment in determining whether or not they are applicable to your
situation.

It's possible that I'm mistaken, but my understanding of emacs-guix was
that it invoked a Guile REPL (even though it refers to it as a Guix
REPL).  This can be confirmed by evaluating "(command-line)" in the
"*Guix REPL*" buffer (which on my machine, on a foreign distro, shows
guile).

> Are you wanting this elisp code run before/after emacs-guix.el is
> loaded in Emacs?

As long as emacs-guix is not modifying the GUILE_LOAD_PATH environment
variable, it didn't matter when the code was evaluated.

> Anyhow, if I just execute (eval-last-sexp) the code you sent, I get
> this error:

The error you encountered could be due to a difference in %load-path
between the emacs-guix "*Guix REPL*" buffer vs %load-path when one runs
"guix repl" directly on the shell.  The "guix-module-union" entry may be
of interest.

On my machine, I have to take some extra steps to ensure that said entry
exists in GUILE_LOAD_PATH (i.e., the %load-path when one loads the guile
repl).

-- 
Suhail