|
|
|
;;; init.el --- The Emacs init file
|
|
|
|
;;
|
|
|
|
;;; Commentary:
|
|
|
|
;; This is the main configuration file for Emacs.
|
|
|
|
;; In this file:
|
|
|
|
;; - Set the bootstratp for straight.el
|
|
|
|
;; - Load use-package
|
|
|
|
;; - Load no-littering
|
|
|
|
;; - Set user-init-directory to ~/.cache/emacs
|
|
|
|
;; - Install the latest release of org
|
|
|
|
;; - Load the file ~/.emacs.d/myconfig.org
|
|
|
|
;;
|
|
|
|
;;; Code:
|
|
|
|
;;
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; set up straight package manager
|
|
|
|
;;
|
|
|
|
;; set new location for straight.el
|
|
|
|
(setq straight-base-dir (expand-file-name "~/.cache/emacs/var"))
|
|
|
|
;;
|
|
|
|
(defvar bootstrap-version)
|
|
|
|
(let ((bootstrap-file
|
|
|
|
(expand-file-name "straight/repos/straight.el/bootstrap.el" straight-base-dir))
|
|
|
|
(bootstrap-version 6))
|
|
|
|
(unless (file-exists-p bootstrap-file)
|
|
|
|
(with-current-buffer
|
|
|
|
(url-retrieve-synchronously
|
|
|
|
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
|
|
|
|
'silent 'inhibit-cookies)
|
|
|
|
(goto-char (point-max))
|
|
|
|
(eval-print-last-sexp)))
|
|
|
|
(load bootstrap-file nil 'nomessage))
|
|
|
|
;;
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; Install and configure use-package
|
|
|
|
(straight-use-package 'use-package)
|
|
|
|
(setq straight-use-package-by-default t)
|
|
|
|
;;
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; Keep emacs clean!
|
|
|
|
;; Use no-littering to automatically set common paths to the new user-emacs-directory
|
|
|
|
(use-package no-littering
|
|
|
|
:init
|
|
|
|
;; set paths for no-littering etc and var directories
|
|
|
|
;; instead of this paths, you could use
|
|
|
|
;; (setq user-emacs-directory (expand-file-name "~/.cache/emacs"))
|
|
|
|
(setq no-littering-etc-directory (expand-file-name "~/.cache/emacs/etc")
|
|
|
|
no-littering-var-directory (expand-file-name "~/.cache/emacs/var")
|
|
|
|
)
|
|
|
|
:config
|
|
|
|
;; set sensible defaults for backups
|
|
|
|
(no-littering-theme-backups)
|
|
|
|
;; set paths for url-history-file and custom-file
|
|
|
|
(setq url-history-file (no-littering-expand-etc-file-name "url/history")
|
|
|
|
custom-file (no-littering-expand-etc-file-name "custom.el"))
|
|
|
|
)
|
|
|
|
;;
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; Install org-mode
|
|
|
|
(straight-use-package 'org)
|
|
|
|
;;
|
|
|
|
;;
|
|
|
|
(provide 'init)
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;;; init.el ends here
|