Subject: Re: bug#22550: (require 'magit) produces error: "no such file or directory" "dash"

From: myglc2 <[email-masked]>
Date: Thu, 04 Feb 2016 18:40:06 -0500

Alex Kost <[email-masked]> writes:

> myglc2 (2016-02-04 18:16 +0300) wrote:
>
>> So, should I put ...
>>
>> '(guix-emacs-load-autoloads "/run/current-system/profile")'
>>
>> ... in init.el, in which case guix INFO should say so.
>
> Well, you can do it as a temporary workaround, but we'll fix it soon (I
> mean the system profile will also be inspected for emacs packages), so
> it will not be necessary in the closest future.
>
>> Or, is there something wrong with EMACSLOADPATH?
>
> Yes, I mean it's not a problem on your side, but it's bug in GuixSD. I
> think we should change this value from ":/etc/emacs" to "/etc/emacs:".
> The problem with the current EMACSLOADPATH is that "/etc/emacs" value is
> appended to 'load-path' variable, but it should be prepended to it, so
> that the proper "site-lisp.el" will be found.
>
> Sorry, this bug was introduced recently and you are the first who faced
> it :-)

Not to worry... bugs must be made in the course of progress.

>
> Right now I can't check it, but I think if you start emacs like this:
>
>   EMACSLOADPATH=/etc/emacs: emacs
>
> you'll get "M-x guix-…" commands.  Could you confirm?

Yes that works.

... and then if I do

'(guix-emacs-load-autoloads "/run/current-system/profile")'

'M-x magit-status' works.

>
> So to recap, you found 2 issues:
>
> 1. Emacs packages installed in a system profile are not automatically
>    added to 'load-path'.
>
> 2. With the current EMACSLOADPATH, a wrong "site-lisp.el" is loaded, so
>    "M-x guix-…" commands are not autoloaded.
>
> Both are easy to fix, thanks again for reporting!

My pleasure.

I am a little confused (not your fault). May I ask an off-topic
question?

It seems that doing ... 'M-x guix-edit foo.scm' ... amounts to hacking
guix.

However '8.1 Building from Git' says, "If you want to hack Guix itself,
it is recommended to use the latest version from the Git repository."
... and goes on to describe a different approach.

Can you comment on which approach is best for which situation.

TIA - George