This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
spacemacs/packages.el

60 lines
1.9 KiB
EmacsLisp

(require 'package)
(setq package-archives '(("ELPA" . "http://tromey.com/elpa/")
("gnu" . "http://elpa.gnu.org/packages/")
("melpa" . "http://melpa.milkbox.net/packages/")
("marmalade" . "http://marmalade-repo.org/packages/")
("melpa" . "http://melpa.milkbox.net/packages/")
("technomancy" . "http://repo.technomancy.us/emacs/")))
(package-initialize)
(defvar z:packages
'(
ace-jump-mode
auto-complete
autopair
deferred
epc
erlang
evil
fill-column-indicator
find-file-in-project
fuzzy
highlight-symbol
ido-ubiquitous
ipython
jedi
key-chord
p4
paredit
powerline
popup
rainbow-delimiters
smart-operator
smex
solarized-theme
surround
yasnippet
))
;;; install missing packages
(let ((not-installed (remove-if 'package-installed-p z:packages)))
(if not-installed
(if (y-or-n-p (format "there are %d packages to be installed. install them? " (length not-installed)))
(progn (package-refresh-contents)
(dolist (package z:packages)
(when (not (package-installed-p package))
(package-install package)))))))
;;; initialize packages
(setq z:package-init-dir (concat user-emacs-directory "init-package/"))
(message (format "initializing packages out of %s" z:package-init-dir))
(dolist (package (append (mapcar 'car package--builtins) package-activated-list))
(let* ((initfile (concat z:package-init-dir (format "init-%s.el" package))))
(if (and (package-installed-p package)
(file-exists-p initfile))
(progn (load initfile)
(message (format "loaded %s" initfile))))))
(when (memq window-system '(mac ns))
(exec-path-from-shell-initialize))
(provide 'packages)