"Automatic Package Fetcher and Installer."
:prefix "package-get"
:group 'package-tools)
-
+
+;;;###autoload
(defvar package-get-base nil
"List of packages that are installed at this site.
For each element in the alist, car is the package name and the cdr is
not, then it uses the (car search) as the remote site-name and the (cadr
search) as the remote-directory and concatenates filename. In other
words
- site-name:remote-directory/filename
+ site-name:remote-directory/filename.
+
+If (car search) is nil, (cadr search is interpreted as a local directory).
"
- (if (efs-ftp-path filename)
+ (if (file-remote-p filename)
filename
(let ((dir (cadr search)))
- (concat (if (string-match "@" (car search))
- "/"
- "/anonymous@")
- (car search) ":"
+ (concat (when (car search)
+ (concat
+ (if (string-match "@" (car search))
+ "/"
+ "/anonymous@")
+ (car search) ":"))
(if (string-match "/$" dir)
dir
(concat dir "/"))
"Fetch and install the latest versions of all customized packages."
(interactive)
(package-get-require-base t)
- ;; Load a fresh copy
- (load "package-get-custom.el")
(mapcar (lambda (pkg)
(if (eval (intern (concat (symbol-name (car pkg)) "-package")))
(package-get (car pkg) nil))
(custom-var (intern (concat (symbol-name package) "-package")))
(description (plist-get props 'description)))
(when (not (memq group package-get-custom-groups))
- (setq package-get-custom-groups (cons package
+ (setq package-get-custom-groups (cons group
package-get-custom-groups))
(eval `(defgroup ,group nil
,(concat category " package group")