summaryrefslogtreecommitdiff
path: root/.emacs.rc/rc.el
diff options
context:
space:
mode:
Diffstat (limited to '.emacs.rc/rc.el')
-rw-r--r--.emacs.rc/rc.el34
1 files changed, 34 insertions, 0 deletions
diff --git a/.emacs.rc/rc.el b/.emacs.rc/rc.el
new file mode 100644
index 0000000..c57f380
--- /dev/null
+++ b/.emacs.rc/rc.el
@@ -0,0 +1,34 @@
+(add-to-list 'package-archives
+ '("melpa" . "https://melpa.org/packages/") t)
+;; (add-to-list 'package-archives
+;; '("melpa-stable" . "https://stable.melpa.org/packages/") t)
+
+(defvar rc/package-contents-refreshed nil)
+
+(defun rc/package-refresh-contents-once ()
+ (when (not rc/package-contents-refreshed)
+ (setq rc/package-contents-refreshed t)
+ (package-refresh-contents)))
+
+(defun rc/require-one-package (package)
+ (when (not (package-installed-p package))
+ (rc/package-refresh-contents-once)
+ (package-install package)))
+
+(defun rc/require (&rest packages)
+ (dolist (package packages)
+ (rc/require-one-package package)))
+
+(defun rc/require-theme (theme)
+ (let ((theme-package (->> theme
+ (symbol-name)
+ (funcall (-flip #'concat) "-theme")
+ (intern))))
+ (rc/require theme-package)
+ (load-theme theme t)))
+
+(rc/require 'dash)
+(require 'dash)
+
+(rc/require 'dash-functional)
+(require 'dash-functional)