summaryrefslogtreecommitdiffstats
path: root/lisp/init-package.el
blob: 14d732d5a8e0719b11f830f986d35ac15b63d26a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
;; add melpa repo
(require 'package)
(add-to-list 'package-archives
             '("melpa" . "http://melpa.milkbox.net/packages/") t)
(package-initialize)

(defun require-package (package &optional min-version no-refresh)
  "Install given PACKAGE, optionally requiring MIN-VERSION.
If NO-REFRESH is non-nil, the available package lists will not be
re-downloaded in order to locate PACKAGE."
  (if (package-installed-p package min-version)
      t
    (if (or (assoc package package-archive-contents) no-refresh)
        (package-install package)
      (progn
        (package-refresh-contents)
        (require-package package min-version t)))))

;; dash - a better list api
(require-package 'dash)
(require 'dash)

(defun require-packages (packages)
  "Install a list of PACKAGES."
  (--each packages (require-package it)))

(provide 'init-package)