bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#25819: 25.1; Added by Package.el. Added by Package.el. Added by Pack


From: frederik
Subject: bug#25819: 25.1; Added by Package.el. Added by Package.el. Added by Package.el. Added by Package.el.
Date: Wed, 22 Feb 2017 22:23:51 -0800
User-agent: Mutt/1.7.2 (2016-11-26)

Thank you!

On Wed, Feb 22, 2017 at 09:28:02PM -0500, npostavs@users.sourceforge.net wrote:
> forcemerge 25819 24643
> tags 25819 patch
> quit
> 
> frederik@ofb.net writes:
> 
> > On Wed, Feb 22, 2017 at 02:28:27PM -0500, Glenn Morris wrote:
> >> 
> >> I tested with:
> >> 
> >> /tmp/h1/.emacs:
> >>     (setenv "HOME" "/tmp/h2/")
> >>     (setq savehist-file "/tmp/h1/.emacs-history")
> >>     (load "~/.emacs")
> >>     (setenv "HOME" "/tmp/h1/")
> >> 
> >> /tmp/h2/.emacs:
> >>     (setq foo 99)
> >> 
> >> 
> >> HOME=/tmp/h1 emacs-25.1
> >> M-x package-initialize
> >
> > You don't think my problem is common!? :) Well I'm not sure how other
> > people edit files as root,
> 
> Probably with TRAMP: https://www.emacswiki.org/emacs/TrampMode#toc20
> 
> > Thank you (indeed) for taking the time to trim down my problem to a
> > minimal test case. If we make it a little less minimal:
> >
> > /tmp/h2/.emacs:
> >     (setq foo 99)
> >     (package-initialize)
> >
> > then I find it reproduces the problem:
> 
> AFAICT, this is essentially the problem described in #24643 and should be
> fixed by the suggestion there:
> 

> From aeae23ab082e948eca71ead3ea50a49a4fe73251 Mon Sep 17 00:00:00 2001
> From: Noam Postavsky <npostavs@gmail.com>
> Date: Wed, 22 Feb 2017 21:12:41 -0500
> Subject: [PATCH v1] Don't call package--ensure-init-file if initialized during
>  startup
> 
> * lisp/emacs-lisp/package.el (package-initialize): Check
> `after-init-time' rather than `load-file-name' to decide if
> `package--ensure-init-file' should be called.  Depending on
> `load-file-name' will fail if the user calls `pacakge-initialize' in
> file which is loaded from the init file (Bug#24643, Bug#25819).
> ---
>  lisp/emacs-lisp/package.el | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
> index 0851c5e1fd..ee4bb750ab 100644
> --- a/lisp/emacs-lisp/package.el
> +++ b/lisp/emacs-lisp/package.el
> @@ -1445,13 +1445,13 @@ package-initialize
>  taken care of by `package-initialize'."
>    (interactive)
>    (setq package-alist nil)
> -  (if (equal user-init-file load-file-name)
> -      ;; If `package-initialize' is being called as part of loading
> -      ;; the init file, it's obvious we don't need to ensure-init.
> -      (setq package--init-file-ensured t
> -            ;; And likely we don't need to run it again after init.
> -            package-enable-at-startup nil)
> -    (package--ensure-init-file))
> +  (if after-init-time
> +      (package--ensure-init-file)
> +    ;; If `package-initialize' is before we finished loading the init
> +    ;; file, it's obvious we don't need to ensure-init.
> +    (setq package--init-file-ensured t
> +          ;; And likely we don't need to run it again after init.
> +          package-enable-at-startup nil))
>    (package-load-all-descriptors)
>    (package-read-all-archive-contents)
>    (unless no-activate
> -- 
> 2.11.1
> 






reply via email to

[Prev in Thread] Current Thread [Next in Thread]