summaryrefslogtreecommitdiff
path: root/lisp/init-pkg.el
diff options
context:
space:
mode:
authorKyle Meyer <kyle@kyleam.com>2014-01-26 01:59:44 -0500
committerKyle Meyer <kyle@kyleam.com>2014-01-26 01:59:44 -0500
commit7869360008d87ca4b459c703f4894625dd8181cc (patch)
treeb0f3f50ae2c309056883e03848abb3e1e4cb9b1e /lisp/init-pkg.el
parent47e1d90700105f6b0f0550d7632a22b3fe81acb9 (diff)
downloademacs.d-7869360008d87ca4b459c703f4894625dd8181cc.tar.gz
Follow Purcell's emacs.d structure
User init files are added using provide/require. https://github.com/purcell/emacs.d
Diffstat (limited to 'lisp/init-pkg.el')
-rw-r--r--lisp/init-pkg.el53
1 files changed, 53 insertions, 0 deletions
diff --git a/lisp/init-pkg.el b/lisp/init-pkg.el
new file mode 100644
index 0000000..0b248ef
--- /dev/null
+++ b/lisp/init-pkg.el
@@ -0,0 +1,53 @@
+;; http://www.aaronbedra.com/emacs.d/
+
+(require 'package)
+(add-to-list 'package-archives
+ '("melpa" . "http://melpa.milkbox.net/packages/") t)
+(setq package-enable-at-startup nil)
+(package-initialize)
+
+(require 'cl)
+(defvar km/packages '(ace-jump-mode
+ auctex
+ dash
+ ess
+ expand-region
+ flx
+ flx-ido
+ git-annex
+ git-commit-mode
+ haskell-mode
+ htmlize
+ key-chord
+ less-css-mode
+ lua-mode
+ magit
+ markdown-mode
+ mocker
+ multiple-cursors
+ paredit
+ pkgbuild-mode
+ projectile
+ smex
+ wrap-region
+ yasnippet)
+ "Default packages")
+
+(defun km/packages-installed-p ()
+ (loop for pkg in km/packages
+ when (not (package-installed-p pkg)) do (return nil)
+ finally (return t)))
+
+(unless (km/packages-installed-p)
+ (message "%s" "Refreshing package database...")
+ (package-refresh-contents)
+ (dolist (pkg km/packages)
+ (when (not (package-installed-p pkg))
+ (message "installing %s" pkg)
+ (package-install pkg))))
+
+(add-to-list 'load-path "~/.emacs.d/vendor/")
+(add-to-list 'load-path "~/src/emacs/org-mode/lisp")
+(add-to-list 'load-path "~/src/emacs/org-mode/contrib/lisp" t)
+
+(provide 'init-pkg)