; my-packages.el (require 'package) (defconst emacs-d (file-name-directory (file-chase-links load-file-name)) "The giant turtle on which the world rests.") (setq package-user-dir (expand-file-name "elpa" emacs-d)) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) (add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/") t) (package-initialize) ; fetch the list of packages available (package-refresh-contents) ;; make sure my list of packages are installed (setq package-list '(go-mode rust-mode haskell-mode hindent restclient tangotango-theme fill-column-indicator paredit leuven-theme notmuch railscasts-theme racket-mode auto-complete magit ledger-mode company company-racer markdown-mode flycheck flycheck-rust flycheck-haskell racer dumb-jump)) ; install the missing packages (dolist (package package-list) (unless (package-installed-p package) (package-install package))) ;; upgrade installed (save-window-excursion (package-list-packages t) (package-menu-mark-upgrades) (package-menu-execute t))