mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2026-09-11 00:06:36 -04:00
Avoid installing packages when using 'package-isolate'
* lisp/emacs-lisp/package.el (package-isolate): When translating full package names into package descriptors, prefer the package descriptors of already installed packages to those of remote packages.
This commit is contained in:
parent
8466eb4499
commit
29f292fa87
|
|
@ -2623,9 +2623,23 @@ If TEMP-INIT is non-nil, or when invoked with a prefix argument, the
|
|||
Emacs user directory is set to a temporary directory. This command is
|
||||
intended for testing Emacs and/or the packages in a clean environment."
|
||||
(interactive
|
||||
(cl-loop for p in (append
|
||||
(cl-loop for p in (package--alist) append (cdr p))
|
||||
(cl-loop for p in (package--archive-contents) append (cdr p)))
|
||||
(cl-loop for p in
|
||||
(cl-loop with installed = (cl-loop for p in (package--alist)
|
||||
append (cdr p))
|
||||
for p in (package--archive-contents)
|
||||
append (cl-loop
|
||||
for desc in (cdr p)
|
||||
unless (cl-loop
|
||||
for idesc in installed thereis
|
||||
(and (string= (package-desc-name idesc)
|
||||
(package-desc-name desc))
|
||||
(equal (package-desc-version idesc)
|
||||
(package-desc-version desc))
|
||||
(eq (package-desc-kind idesc)
|
||||
(package-desc-kind desc))))
|
||||
collect desc)
|
||||
into descs
|
||||
finally return (nconc installed descs))
|
||||
unless (package-built-in-p p)
|
||||
collect (cons (package-desc-full-name p) p) into table
|
||||
finally return
|
||||
|
|
|
|||
Loading…
Reference in a new issue