diff options
author | Stefan Kangas <stefankangas@gmail.com> | 2019-11-06 01:19:23 +0100 |
---|---|---|
committer | Stefan Kangas <stefankangas@gmail.com> | 2019-11-06 01:19:23 +0100 |
commit | 0661a39d1b501a41e439df8c73f7b7f3bf3e3761 (patch) | |
tree | 7fad886c94778a03998fb109e6868173032e2980 /lisp/emacs-lisp/package.el | |
parent | 0c293f1520dd73203c03d7934ac21b2bae6eaf37 (diff) | |
download | emacs-0661a39d1b501a41e439df8c73f7b7f3bf3e3761.tar.gz emacs-0661a39d1b501a41e439df8c73f7b7f3bf3e3761.tar.bz2 emacs-0661a39d1b501a41e439df8c73f7b7f3bf3e3761.zip |
Avoid changing value of defcustom package-enable-at-startup
* lisp/emacs-lisp/package.el (package--activated): New variable to
avoid changing value of defcustom 'package-enable-at-startup'.
(package-initialize): Don't set 'package-enable-at-startup'.
(package-initialize, package-activate-all): Set 'package--activated'
instead of 'package-enable-at-startup'.
(package--initialized): Add doc string.
* lisp/startup.el (command-line): Check if 'package--activated' is
non-nil before activating packages.
* doc/lispref/package.texi (Packaging Basics): Update docs.
Diffstat (limited to 'lisp/emacs-lisp/package.el')
-rw-r--r-- | lisp/emacs-lisp/package.el | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index 3c14b50f3ed..b7a528dac49 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -1543,20 +1543,24 @@ If successful, set or update `package-archive-contents'." (dolist (archive package-archives) (package-read-archive-contents (car archive)))) + ;;;; Package Initialize ;; A bit of a milestone. This brings together some of the above ;; sections and populates all relevant lists of packages from contents ;; available on disk. -(defvar package--initialized nil) + +(defvar package--initialized nil + "Non-nil if `package-initialize' has been run.") + +;;;###autoload +(defvar package--activated nil + "Non-nil if `package-activate-all' has been run.") ;;;###autoload (defun package-initialize (&optional no-activate) "Load Emacs Lisp packages, and activate them. The variable `package-load-list' controls which packages to load. If optional arg NO-ACTIVATE is non-nil, don't activate packages. -If called as part of loading `user-init-file', set -`package-enable-at-startup' to nil, to prevent accidentally -loading packages twice. It is not necessary to adjust `load-path' or `require' the individual packages after calling `package-initialize' -- this is @@ -1573,7 +1577,6 @@ that code in the early init-file." (lwarn '(package reinitialization) :warning "Unnecessary call to `package-initialize' in init file")) (setq package-alist nil) - (setq package-enable-at-startup nil) (package-load-all-descriptors) (package-read-all-archive-contents) (setq package--initialized t) @@ -1589,7 +1592,7 @@ that code in the early init-file." (defun package-activate-all () "Activate all installed packages. The variable `package-load-list' controls which packages to load." - (setq package-enable-at-startup nil) + (setq package--activated t) (if (file-readable-p package-quickstart-file) ;; Skip load-source-file-function which would slow us down by a factor ;; 2 (this assumes we were careful to save this file so it doesn't need |