summaryrefslogtreecommitdiff
path: root/dots/emacs/.emacs.d/init.el
diff options
context:
space:
mode:
Diffstat (limited to 'dots/emacs/.emacs.d/init.el')
-rw-r--r--dots/emacs/.emacs.d/init.el55
1 files changed, 55 insertions, 0 deletions
diff --git a/dots/emacs/.emacs.d/init.el b/dots/emacs/.emacs.d/init.el
new file mode 100644
index 0000000..a52ee9e
--- /dev/null
+++ b/dots/emacs/.emacs.d/init.el
@@ -0,0 +1,55 @@
+;;-- <helpers> --
+(defun find-user-file (file-name)
+ (expand-file-name file-name user-emacs-directory))
+
+(defmacro in-remote-buffer (url &rest body)
+ "evals in a buffer whose contents are raw retrieved from (url)"
+ `(with-current-buffer (url-retrieve-synchronously
+ ,url 'silent 'inhibit-cookies)
+ ;; delete headers
+ (goto-char (point-min))
+ (re-search-forward "^$")
+ (delete-region (point) (point-min))
+
+ ,@body))
+
+(defun eval-remote (url)
+ "essentially `curl (url) | sh` (ノ´ヮ`)ノ*"
+ (in-remote-buffer url
+ (eval-buffer)))
+;;-- </helpers> --
+
+;;-- <straight.el> --
+;;(( what abt gay.el („• ֊ •„) hehe ))
+
+;; bootstrap, installing if it doesn't yet exist.
+(defvar *straight-version* 5)
+(defvar *straight-bootstrap-file*
+ (find-user-file "straight/repos/straight.el/bootstrap.el"))
+(defvar *straight-src*
+ "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el")
+(defun bootstrap-straight (&optional version file src)
+ "bootstrap straight.el (version), eval'ing (file) or falling back to (src)"
+ (or version (setq version *straight-version*))
+ (or file (setq file *straight-bootstrap-file*))
+ (or src (setq src *straight-src*))
+ (if (file-exists-p file)
+ (load file nil 'nomessage)
+ (eval-remote src)))
+
+(bootstrap-straight)
+
+;; install it and use it by default!
+(straight-use-package 'use-package)
+(use-package straight
+ :custom
+ (straight-use-package-by-default t))
+;;-- </straight.el> --
+
+;;-- <org_init> --
+(use-package org
+ :straight (:type built-in))
+
+(defvar *settings-org* "empressomacs.org")
+(org-babel-load-file (find-user-file *settings-org*))
+;;-- </org_init> --