unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Alexandru-Sergiu Marton <brown121407@posteo.ro>
To: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Cc: 42333@debbugs.gnu.org
Subject: bug#42333: Emacs: error on guix-emacs-autoload-packages
Date: Sun, 19 Jul 2020 22:48:53 +0300	[thread overview]
Message-ID: <87imejl1zu.fsf@posteo.ro> (raw)
In-Reply-To: <874kq8kar0.fsf@gmail.com> (Maxim Cournoyer's message of "Wed, 15 Jul 2020 12:23:47 -0400")

Hi, sorry for the long time it took to reply.

Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:

> If you could come with a minimal reproducer, I could have a look.
>
> Otherwise, I'm afraid there's too many variables to keep track
> (emacs-doom, possible conflicts with Org when installed from different
> places, etc.).

I managed to gather more information as I found another person who had
the same problems as me.

Steps to reproduce:
- Install emacs and emacs-telega with guix
- Install Doom Emacs (https://github.com/hlissner/doom-emacs)
- Start Emacs and try M-x telega RET

This should give you an error saying something along the lines of "No
file or directory." Even if it doesn't give you this exact same error,
check what I say below about load-path.

It seems that Doom plays with Emacs' load-path. Telega is just a
concrete example of an Emacs package installed with Guix that isn't
working. You should be able to find problems with many others.

When checking the value of the environment variable EMACSLOADPATH, both
the result from the shell (through echo $EMACSLOADPATH) and from Emacs
(through (getenv "EMACSLOADPATH")) seem to be equal. What is not right
is that the load-path Emacs Lisp variable doesn't contain the paths from
EMACSLOADPATH.

What fixed it for me and the other person was adding this line at the
end of our config.el (Doom's config file):

--8<---------------cut here---------------start------------->8---
(mapc (lambda (p) (add-load-path! p)) (split-string (getenv "EMACSLOADPATH") ":"))
--8<---------------cut here---------------end--------------->8---

This is a hack but gets the job done for now.

I thought about this problem being caused by Doom's envvars file, but
that file contains the correct value of EMACSLOADPATH and we saw that
querying that environment variable from inside Emacs gives the correct
answer.

Finding the root of this problem will be beneficial to a lot of
potential Guix users that might ditch it if they see their beloved Emacs
config doesn't work well with packages installed from Guix.

Cheers,
Sergiu




  reply	other threads:[~2020-07-19 19:50 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-12 10:11 bug#42333: Emacs: error on guix-emacs-autoload-packages Alexandru-Sergiu Marton
2020-07-12 13:48 ` Alexandru-Sergiu Marton
2020-07-13  9:41   ` Alexandru-Sergiu Marton
2020-07-15 16:23   ` Maxim Cournoyer
2020-07-19 19:48     ` Alexandru-Sergiu Marton [this message]
2020-07-24 23:03       ` Brett Gilio
2022-07-14  2:42         ` bug#42333: Doom Emacs breaks the Emacs autoloads mechanism used in Guix Maxim Cournoyer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87imejl1zu.fsf@posteo.ro \
    --to=brown121407@posteo.ro \
    --cc=42333@debbugs.gnu.org \
    --cc=maxim.cournoyer@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).