Files
.emacs.d/early-init.el

57 lines
2.1 KiB
EmacsLisp

;;; early-init.el --- jimeh's Emacs Siren: early init file.
;;; Commentary:
;; The file before the file that starts it all.
;;; Code:
;; Native-Comp
(setq native-comp-speed 2
comp-speed 2)
(setq native-comp-async-report-warnings-errors nil
comp-async-report-warnings-errors nil)
(setq native-comp-async-query-on-exit t
comp-async-query-on-exit t)
;; Prevent native-compiling .dir-locals.el files.
(let ((deny-list '("\\(?:[/\\\\]\\.dir-locals\\.el$\\)")))
(if (boundp 'native-comp-deferred-compilation-deny-list)
(setq native-comp-deferred-compilation-deny-list deny-list)
(setq comp-deferred-compilation-deny-list deny-list)))
(when (or (boundp 'comp-eln-load-path) (boundp 'native-comp-eln-load-path))
(let ((eln-cache-dir (expand-file-name "cache/eln-cache/"
user-emacs-directory))
(find-exec (executable-find "find")))
(if (boundp 'native-comp-eln-load-path)
(setcar native-comp-eln-load-path eln-cache-dir)
(setcar comp-eln-load-path eln-cache-dir))
;; Quitting emacs while native compilation in progress can leave zero byte
;; sized *.eln files behind. Hence delete such files during startup.
(when find-exec
(call-process find-exec nil nil nil eln-cache-dir
"-name" "*.eln" "-size" "0" "-delete" "-or"
"-name" "*.eln.tmp" "-size" "0" "-delete"))))
;; Defer garbage collection further back in the startup process
(setq gc-cons-threshold most-positive-fixnum)
;; Disable Emacs 27's automatic package.el initialization before the init.el
;; file is loaded. I use straight.el instead of package.el.
(setq package-enable-at-startup nil)
;; Prevent the glimpse of un-styled Emacs by disabling these UI elements early.
(setq tool-bar-mode nil
menu-bar-mode nil)
(when (fboundp 'set-scroll-bar-mode)
(set-scroll-bar-mode nil))
;; Resizing the Emacs frame can be a terribly expensive part of changing the
;; font. By inhibiting this, we easily halve startup times with fonts that are
;; larger than the system default.
(setq frame-inhibit-implied-resize t)
;;; early-init.el ends here