2017-11-12 19:46:14 +01:00
|
|
|
;;; init.el --- Package bootstrapping. -*- lexical-binding: t; -*-
|
|
|
|
|
2018-03-04 00:14:13 +01:00
|
|
|
;; Packages are installed via Nix configuration, this file only
|
|
|
|
;; initialises the newly loaded packages.
|
2017-11-12 19:46:14 +01:00
|
|
|
|
2013-07-08 01:15:05 +02:00
|
|
|
(require 'package)
|
2017-11-12 19:46:14 +01:00
|
|
|
(require 'seq)
|
2013-07-08 01:15:05 +02:00
|
|
|
|
2017-11-12 20:24:21 +01:00
|
|
|
(package-initialize)
|
2013-07-08 01:15:05 +02:00
|
|
|
|
2017-11-12 19:46:14 +01:00
|
|
|
;; Configure a few basics before moving on to package-specific initialisation.
|
2014-10-21 19:37:19 +02:00
|
|
|
(setq custom-file (concat user-emacs-directory "init/custom.el"))
|
2013-07-08 01:15:05 +02:00
|
|
|
(load custom-file)
|
|
|
|
|
2017-11-12 19:46:14 +01:00
|
|
|
(defvar home-dir)
|
|
|
|
(setq home-dir (expand-file-name "~"))
|
2013-08-05 11:54:38 +02:00
|
|
|
|
2013-07-08 01:15:05 +02:00
|
|
|
;; Seed RNG
|
|
|
|
(random t)
|
|
|
|
|
2017-11-12 19:46:14 +01:00
|
|
|
;; Add 'init' folder that contains other settings to load.
|
|
|
|
(add-to-list 'load-path (concat user-emacs-directory "init"))
|
|
|
|
|
|
|
|
;; Load configuration that makes use of installed packages:
|
|
|
|
|
|
|
|
;; Emacs will automatically initialise all installed packages.
|
|
|
|
;; After initialisation, proceed to load configuration that requires packages:
|
|
|
|
(defun load-other-settings ()
|
2017-11-15 17:35:17 +01:00
|
|
|
(mapc 'require '(nixos
|
|
|
|
look-and-feel
|
2017-11-12 19:46:14 +01:00
|
|
|
functions
|
|
|
|
settings
|
|
|
|
modes
|
|
|
|
bindings
|
|
|
|
eshell-setup
|
|
|
|
haskell-setup
|
|
|
|
rust-setup
|
2017-11-24 16:45:12 +01:00
|
|
|
lisp-setup
|
2017-11-12 19:46:14 +01:00
|
|
|
)))
|
2017-07-30 18:30:04 +02:00
|
|
|
|
2017-11-12 19:46:14 +01:00
|
|
|
(add-hook 'after-init-hook 'load-other-settings)
|
2018-02-23 10:03:15 +01:00
|
|
|
(put 'narrow-to-region 'disabled nil)
|