From a2f14183a15376bf0e58346d29617bc550babf64 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Tue, 6 Jun 2017 12:01:10 +0200 Subject: [PATCH] Fix double package-refresh on first install --- core/autoload/packages.el | 4 +++- core/core-packages.el | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/core/autoload/packages.el b/core/autoload/packages.el index 3c529a9d1..b78662207 100644 --- a/core/autoload/packages.el +++ b/core/autoload/packages.el @@ -9,7 +9,8 @@ (doom-initialize) (when force-p (doom-refresh-clear-cache)) - (unless (persistent-soft-fetch 'last-pkg-refresh "emacs") + (unless (or (persistent-soft-fetch 'last-pkg-refresh "emacs") + doom--refresh-p) (condition-case ex (progn (message "Refreshing package archives") @@ -25,6 +26,7 @@ ;;;###autoload (defun doom-refresh-clear-cache () "Clear the cache for `doom-refresh-packages'." + (setq doom--refresh-p nil) (persistent-soft-store 'last-pkg-refresh nil "emacs")) ;;;###autoload diff --git a/core/core-packages.el b/core/core-packages.el index d2b874d97..4fee146c0 100644 --- a/core/core-packages.el +++ b/core/core-packages.el @@ -74,6 +74,8 @@ missing) and shouldn't be deleted.") "A backup of `load-path' before it was altered by `doom-initialize'. Used as a base by `doom!' and for calculating how many packages exist.") +(defvar doom--refresh-p nil) + (setq load-prefer-newer noninteractive package--init-file-ensured t package-user-dir (expand-file-name "elpa" doom-packages-dir) @@ -148,7 +150,8 @@ to speed up startup." ;; Ensure core packages are installed (let ((core-packages (cl-remove-if #'package-installed-p doom-core-packages))) (when core-packages - (package-refresh-contents) + (package-refresh-contents t) + (setq doom--refresh-p t) (dolist (pkg core-packages) (let ((inhibit-message t)) (package-install pkg))