emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] scratch/install-package-from-directory 44d3f7d 3/4: Set 'd


From: Artur Malabarba
Subject: [Emacs-diffs] scratch/install-package-from-directory 44d3f7d 3/4: Set 'dir packages to 'tar or 'single after installation.
Date: Wed, 14 Jan 2015 15:21:07 +0000

branch: scratch/install-package-from-directory
commit 44d3f7dd079c150d2b484cf804f86ea6cc00f524
Author: Artur Malabarba <address@hidden>
Commit: Artur Malabarba <address@hidden>

    Set 'dir packages to 'tar or 'single after installation.
---
 lisp/emacs-lisp/package.el |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index dcb63a3..27d6b9c 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -787,12 +787,18 @@ untar into a directory named DIR; otherwise, signal an 
error."
     (pcase (package-desc-kind pkg-desc)
       (`dir
        (make-directory pkg-dir t)
-       (dolist (source-file
-                (directory-files
-                 default-directory 'full "\\`[^.].*\\.el\\'" 'nosort))
-         (let ((target-el-file
-                (expand-file-name (file-name-nondirectory source-file) 
pkg-dir)))
-           (copy-file source-file target-el-file t))))
+       (let ((file-list
+              (directory-files
+               default-directory 'full "\\`[^.].*\\.el\\'" 'nosort)))
+         (dolist (source-file file-list)
+           (let ((target-el-file
+                  (expand-file-name (file-name-nondirectory source-file) 
pkg-dir)))
+             (copy-file source-file target-el-file t)))
+         ;; Now that the files have been installed, this package is
+         ;; indistinguishable from a `tar' or a `single'. Let's make
+         ;; things simple by ensuring we're one of them.
+         (setf (package-desc-kind pkg-desc)
+               (if (> (length file-list) 1) 'tar 'single))))
       (`tar
        (make-directory package-user-dir t)
        ;; FIXME: should we delete PKG-DIR if it exists?



reply via email to

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