-
Notifications
You must be signed in to change notification settings - Fork 0
/
step01-load-packages.el
40 lines (33 loc) · 1.19 KB
/
step01-load-packages.el
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
28
29
30
31
32
33
34
35
36
37
38
39
;;; load path to package repositories
(require 'package)
(setq eg-elpa-sources '(("gnu" . "http://elpa.gnu.org/packages/")
("org" . "https://elpa.nongnu.org/nongnu/")
("melpa" . "http://melpa.org/packages/")
("melpa-stable" . "http://stable.melpa.org/packages/")
;; ("marmalade" . "http://marmalade-repo.org/packages/")
))
(dolist (source eg-elpa-sources) (add-to-list 'package-archives source t))
(add-to-list 'package-directory-list package-user-dir)
(setq orig-package-user-dir package-user-dir)
;;; Prevent initialising twice
(setq package-enable-at-startup nil)
(if (eq system-type 'windows-nt)
(package-initialize)
)
;;; To use the nice command use-package :ensure t when loading packages
;; install package if necessary
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package)
)
;; load package
(require 'use-package)
(setq use-package-verbose t)
;;; load all list file from a directory
(defun load-directory (dir)
"from https://www.emacswiki.org/emacs/LoadingLispFiles"
(let ((load-it (lambda (f)
(load-file (concat (file-name-as-directory dir) f)))
))
(mapc load-it (directory-files dir nil "\\.el$")))
)