From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxim Cournoyer Subject: bug#38399: Recent $EMACSLOADPATH changes break emacs-org Date: Thu, 28 Nov 2019 14:11:07 +0900 Message-ID: <87a78gtwk4.fsf@gmail.com> References: <87v9r58wpx.fsf@GlaDOS.home> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:40942) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iaC5z-0001DD-Fo for bug-guix@gnu.org; Thu, 28 Nov 2019 00:12:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iaC5y-0002zE-7E for bug-guix@gnu.org; Thu, 28 Nov 2019 00:12:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:50523) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iaC5y-0002yy-1D for bug-guix@gnu.org; Thu, 28 Nov 2019 00:12:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iaC5x-0004KD-RS for bug-guix@gnu.org; Thu, 28 Nov 2019 00:12:01 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87v9r58wpx.fsf@GlaDOS.home> (Diego Nicola Barbato's message of "Wed, 27 Nov 2019 11:00:58 +0100") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Diego Nicola Barbato Cc: 38399@debbugs.gnu.org Hello Diego, Diego Nicola Barbato writes: > Hi Guix, > > Since the recent changes to the way Guix handles Emacs packages Emacs > loads the wrong =E2=80=98org=E2=80=99 (the one bundled with Emacs instead= of the one > provided by the =E2=80=98emacs-org=E2=80=99 package installed with Guix).= This happens > because in EMACSLOADPATH the directory containing the bundled =E2=80=98or= g=E2=80=99 > precedes the directory containing the =E2=80=98org=E2=80=99 provided by = =E2=80=98emacs-org=E2=80=99. Thanks for the report! > It stands to reason that the elisp libraries provided by Emacs itself > shouldn=E2=80=99t be in EMACSLOADPATH in the first place as they are alre= ady in > =E2=80=98load-path=E2=80=99 to which the directories in EMACSLOADPATH are= prepended (as > described in the Emacs manual). That's not true; when using EMACSLOADPATH the Emacs' bundled libraries must be included explicitly, or an empty item be present (which means, an extra ':' present). See (elisp)Library Search: An empty element in the value of the environment variable, whether trailing (as in the above example), leading, or embedded, is replaced by the default value of =E2=80=98load-path=E2=80=99 as determi= ned by the standard initialization procedure. If there are no such empty elements, then =E2=80=98EMACSLOADPATH=E2=80=99 specifies the entire =E2= =80=98load-path=E2=80=99. You must include either an empty element, or the explicit path to the directory containing the standard Lisp files, else Emacs will not function. That said, the search path specification defined in our Emacs packages should be reordered so that a user profile appears first (before Emacs bundled libraries). I'll address this as part of bug #38309 (see: https://bugs.gnu.org/38309). I'm planning to have it merged in a few days at most. Thanks! Maxim