GNU bug report logs - #55655
28.1; package.el no longers respects `user-emacs-directory'

Previous Next

Package: emacs;

Reported by: Shitikanth <shitikanth1 <at> gmail.com>

Date: Thu, 26 May 2022 11:09:02 UTC

Severity: normal

Found in version 28.1

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 55655 <at> debbugs.gnu.org (full text, mbox):

From: Shitikanth <shitikanth1 <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 55655 <at> debbugs.gnu.org
Subject: Re: bug#55655: 28.1;
 package.el no longers respects `user-emacs-directory'
Date: Thu, 26 May 2022 18:49:53 +0530
I think almost all emacs packages follow the convention of setting
the location of their cache/configuration files by
calling`locate-user-emacs-file'.
This enables the user to just set the user-emacs-directory instead of
configuring all of them individually. (This works great for the use case of
wanting to put your emacs config in a location other than ~/.emacs.d or
even having multiple emacs configs.)

> (defcustom package-user-dir (locate-user-emacs-file "elpa")

Looking at the definition of `package-user-dir`, it ostensibly tries to
follow the same convention as well. It has just stopped working for
some reason since 9973019764, which is why I consider this a bug.

Is it actually intended behavior that `package-user-dir' should not
by default have the same value as (locate-user-emacs-file "elpa")?

On Thu, 26 May 2022 at 17:19, Eli Zaretskii <eliz <at> gnu.org> wrote:
>
> > From: Shitikanth <shitikanth1 <at> gmail.com>
> > Date: Thu, 26 May 2022 16:37:48 +0530
> >
> > Until emacs 27.2, package.el used to correctly pick `package-user-dir'
> > based on the value of `user-emacs-directory', but it now seems to ignore
> > it and defaults to "~/.emacs.d/elpa".
> >
> > Demo:
> >     (setq user-emacs-directory "/tmp")
> >     (require 'package)
> >     (message "%s" package-user-dir)
> >
> > Starting with "emacs -Q" this would output "~/.emacs.d/elpa".
> > Expected output: "/tmp/elpa" (as in emacs 27.2).
> >
> > Based on git bisect, the offending commit seems to be 9973019764.
>
> Why do you set user-emacs-directory instead of setting
> package-user-dir directly?  You are supposed to set the latter in your
> early-init file.




This bug report was last modified 1 year and 250 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.