summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorrekado <rekado@elephly.net>2014-10-28 13:43:44 +0100
committerrekado <rekado@elephly.net>2014-10-28 13:43:44 +0100
commit318ba9e89cb22863054477aefc1d6518bfae1bf7 (patch)
tree1a1ede8bcc609f19c924b19767f22b11bb99b090 /lisp
parenta56deac388b826845ca1449c1e52f9b8a29e228f (diff)
do not use cask
Diffstat (limited to 'lisp')
-rw-r--r--lisp/init-package.el65
1 files changed, 65 insertions, 0 deletions
diff --git a/lisp/init-package.el b/lisp/init-package.el
new file mode 100644
index 0000000..bf0d1ff
--- /dev/null
+++ b/lisp/init-package.el
@@ -0,0 +1,65 @@
+(require 'package)
+
+(add-to-list 'package-archives
+ '("melpa" . "http://melpa.milkbox.net/packages/")
+ '("marmalade" . "http://marmalade-repo.org/packages/"))
+(package-initialize)
+
+(unless (file-exists-p "~/.emacs.d/elpa/archives/melpa")
+ (package-refresh-contents))
+
+(defun packages-install (packages)
+ (mapcar (lambda (package)
+ (when (not (package-installed-p package))
+ (package-install package)))
+ packages)
+ (delete-other-windows))
+
+;; Install extensions if they're missing
+(defun init--install-packages ()
+ (packages-install
+ '(ac-inf-ruby
+ ace-jump-mode
+ auctex
+ auto-complete
+ better-defaults
+ centered-cursor-mode
+ dired-details
+ dired+
+ erc-hl-nicks
+ expand-region
+ fullscreen-mode
+ god-mode
+ geiser
+ haskell-mode
+ helm
+ hungry-delete
+ ido-ubiquitous
+ idomenu
+ inf-ruby
+ info+
+ js2-mode
+ magit
+ markdown-mode
+ multiple-cursors
+ page-break-lines
+ paredit
+ paren-face
+ projectile
+ ruby-block
+ ruby-mode
+ scss-mode
+ shell-switcher
+ skewer-mode
+ smart-mode-line
+ smex
+ sublime-themes
+ undo-tree
+ visual-regexp-steroids
+ znc)))
+
+(condition-case nil
+ (init--install-packages)
+ (error
+ (package-refresh-contents)
+ (init--install-packages)))