2021-01-31 06:51:41 +00:00
|
|
|
;;; init.el --- Spacemacs Initialization File -*- no-byte-compile: t -*-
|
2015-01-14 04:12:56 +00:00
|
|
|
;;
|
2020-09-16 21:34:40 +00:00
|
|
|
;; Copyright (c) 2012-2020 Sylvain Benner & Contributors
|
2015-01-14 04:12:56 +00:00
|
|
|
;;
|
|
|
|
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
|
|
|
|
;; URL: https://github.com/syl20bnr/spacemacs
|
|
|
|
;;
|
|
|
|
;; This file is not part of GNU Emacs.
|
|
|
|
;;
|
|
|
|
;;; License: GPLv3
|
2015-06-18 01:10:13 +00:00
|
|
|
|
|
|
|
;; Without this comment emacs25 adds (package-initialize) here
|
|
|
|
;; (package-initialize)
|
|
|
|
|
2018-01-28 18:35:01 +00:00
|
|
|
;; Avoid garbage collection during startup.
|
2018-01-29 04:22:38 +00:00
|
|
|
;; see `SPC h . dotspacemacs-gc-cons' for more info
|
2018-03-31 04:31:52 +00:00
|
|
|
(defconst emacs-start-time (current-time))
|
2018-01-29 04:22:38 +00:00
|
|
|
(setq gc-cons-threshold 402653184 gc-cons-percentage 0.6)
|
2018-06-10 06:49:51 +00:00
|
|
|
(load (concat (file-name-directory load-file-name)
|
|
|
|
"core/core-versions.el")
|
|
|
|
nil (not init-file-debug))
|
|
|
|
(load (concat (file-name-directory load-file-name)
|
|
|
|
"core/core-load-paths.el")
|
|
|
|
nil (not init-file-debug))
|
|
|
|
(load (concat spacemacs-core-directory "core-dumper.el")
|
|
|
|
nil (not init-file-debug))
|
2015-01-14 04:12:56 +00:00
|
|
|
|
2021-01-31 10:37:17 +00:00
|
|
|
;; Clean compiled files if they become stale or Emacs version has changed.
|
2021-01-25 14:56:36 +00:00
|
|
|
(load (concat spacemacs-core-directory "core-compilation.el")
|
|
|
|
nil (not init-file-debug))
|
2021-01-31 10:37:17 +00:00
|
|
|
(load spacemacs--last-emacs-version-file t (not init-file-debug))
|
2021-01-25 14:56:36 +00:00
|
|
|
(let ((default-directory spacemacs-start-directory))
|
2021-01-31 10:37:17 +00:00
|
|
|
(when (or (not (string= spacemacs--last-emacs-version emacs-version))
|
|
|
|
(spacemacs//contains-newer-than-byte-compiled-p
|
|
|
|
spacemacs--compiled-files))
|
2021-01-31 07:20:42 +00:00
|
|
|
(spacemacs//remove-byte-compiled-files spacemacs--compiled-files)))
|
2021-01-31 10:37:17 +00:00
|
|
|
(when (not (string= spacemacs--last-emacs-version emacs-version))
|
|
|
|
(spacemacs//update-last-emacs-version))
|
2021-01-25 14:56:36 +00:00
|
|
|
|
2015-12-01 05:54:39 +00:00
|
|
|
(if (not (version<= spacemacs-emacs-min-version emacs-version))
|
2017-01-11 11:04:08 +00:00
|
|
|
(error (concat "Your version of Emacs (%s) is too old. "
|
|
|
|
"Spacemacs requires Emacs version %s or above.")
|
|
|
|
emacs-version spacemacs-emacs-min-version)
|
2018-02-03 20:20:23 +00:00
|
|
|
;; Disable file-name-handlers for a speed boost during init
|
|
|
|
(let ((file-name-handler-alist nil))
|
|
|
|
(require 'core-spacemacs)
|
2019-07-27 03:00:47 +00:00
|
|
|
(spacemacs/dump-restore-load-path)
|
2018-02-03 20:20:23 +00:00
|
|
|
(configuration-layer/load-lock-file)
|
|
|
|
(spacemacs/init)
|
2019-08-23 04:51:21 +00:00
|
|
|
(configuration-layer/stable-elpa-init)
|
2018-02-03 20:20:23 +00:00
|
|
|
(configuration-layer/load)
|
|
|
|
(spacemacs-buffer/display-startup-note)
|
|
|
|
(spacemacs/setup-startup-hook)
|
2019-07-27 02:45:12 +00:00
|
|
|
(spacemacs/dump-eval-delayed-functions)
|
2018-05-20 08:41:43 +00:00
|
|
|
(when (and dotspacemacs-enable-server (not (spacemacs-is-dumping-p)))
|
|
|
|
(require 'server)
|
2018-03-04 13:34:05 +00:00
|
|
|
(when dotspacemacs-server-socket-dir
|
|
|
|
(setq server-socket-dir dotspacemacs-server-socket-dir))
|
2018-05-20 08:41:43 +00:00
|
|
|
(unless (server-running-p)
|
|
|
|
(message "Starting a server...")
|
2019-07-27 02:44:11 +00:00
|
|
|
(server-start)))))
|