summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile19
-rw-r--r--init.org41
2 files changed, 46 insertions, 14 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..3b3a23f
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,19 @@
+EMACS ?= emacs
+EMACS_ARGUMENTS ?= -Q
+
+.PHONY: all help clean build build-init quick bootstrap
+.FORCE:
+
+tangle-init: init.el
+init.el: init.org
+ @$(EMACS) $(EMACS_ARGUMENTS) \
+ --batch --load org \
+ --eval '(org-babel-tangle-file "init.org")' 2>&1
+
+build-init:
+ @rm -f init.elc
+ @$(EMACS) $(EMACS_ARGUMENTS) \
+ --batch -l init.el --eval '(a/build-init)' 2>&1
+
+ti: tangle-init
+bi: build-init
diff --git a/init.org b/init.org
index 0503414..60031a4 100644
--- a/init.org
+++ b/init.org
@@ -199,20 +199,33 @@ hacker.
=straight.el= allows me to have a fully reproducible Emacs setup.
#+begin_src emacs-lisp
+;; Main engine start...
+
(setq straight-repository-branch "develop")
-(defvar bootstrap-version)
-(let ((bootstrap-file
- (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
- (bootstrap-version 5))
- (unless (file-exists-p bootstrap-file)
- (with-current-buffer
- (url-retrieve-synchronously
- "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
- 'silent 'inhibit-cookies)
- (goto-char (point-max))
- (eval-print-last-sexp)))
- (load bootstrap-file nil 'nomessage))
+(defun a/bootstrap-straight ()
+ (defvar bootstrap-version)
+ (let ((bootstrap-file
+ (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
+ (bootstrap-version 5))
+ (unless (file-exists-p bootstrap-file)
+ (with-current-buffer
+ (url-retrieve-synchronously
+ "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
+ 'silent 'inhibit-cookies)
+ (goto-char (point-max))
+ (eval-print-last-sexp)))
+ (load bootstrap-file nil 'nomessage)))
+
+;; Solid rocket booster ignition...
+
+(defun a/build-init ()
+ (a/bootstrap-straight)
+ (byte-compile-file "init.el"))
+
+(a/bootstrap-straight)
+
+;; We have lift off!
(setq straight-use-package-by-default t)
#+end_src
@@ -851,10 +864,10 @@ file.
(defvar a/show-async-tangle-time nil
"Show the time spent tangling the file.")
- (defvar a/async-tangle-post-compile nil
+ (defvar a/async-tangle-post-compile "make bi"
"If non-nil, pass to `compile' after successful tangle.")
- (defvar a/async-tangle-byte-recompile t
+ (defvar a/async-tangle-byte-recompile nil
"If non-nil, byte-recompile the file on successful tangle.")
(defun a/async-babel-tangle ()