Christopher James Hayward
4 years ago
2 changed files with 99 additions and 59 deletions
-
72README.org
-
86init.el
@ -1,57 +1,63 @@ |
|||
;; Hosts |
|||
;; Init |
|||
;; :PROPERTIES: |
|||
;; :header-args: :tangle init.el |
|||
;; :END: |
|||
|
|||
;; Here's a complete list of all of the options configurable for each host, and their default values. All variables prefixed with ~dotfiles/~. If you need to make configurations to another variable, consider creating a new option. |
|||
|
|||
|
|||
(defvar dotfiles/font "Fira Code" "Unified system font family.") |
|||
(defvar dotfiles/font-size 96 "Unified system font size.") |
|||
(defvar dotfiles/font |
|||
"Fira Code" |
|||
"Unified system font family.") |
|||
|
|||
(defvar dotfiles/browser (getenv "BROWSER") "Default system web browser.") |
|||
(defvar dotfiles/language (getenv "LANG") "Default system dictionary language.") |
|||
(defvar dotfiles/font-size |
|||
96 |
|||
"Unified system font size.") |
|||
|
|||
(defconst dotfiles/modules-p '(core editor email desktop writing projects interface) "All of the available modules.") |
|||
(defvar dotfiles/modules dotfiles/modules-p "All of the enabled modules.") |
|||
(defvar dotfiles/browser |
|||
(getenv "BROWSER") |
|||
"Default system web browser.") |
|||
|
|||
(defvar dotfiles/home user-emacs-directory "Original value of `user-emacs-directory'.") |
|||
(defvar dotfiles/cache (expand-file-name "~/.cache/emacs") "Redirection target of `user-emacs-directory'.") |
|||
(defvar dotfiles/language |
|||
(getenv "LANG") |
|||
"Default system dictionary language.") |
|||
|
|||
(defvar dotfiles/idle 0.0 "Delay time before offering suggestions and completions.") |
|||
(defvar dotfiles/leader-key "SPC" "All powerful leader key.") |
|||
(defvar dotfiles/leader-key-global (concat "C-" dotfiles/leader-key) "Global prefix for the leader key.") |
|||
(defconst dotfiles/modules-p |
|||
'(core editor email desktop writing projects interface) |
|||
"All of the available modules.") |
|||
|
|||
(defvar dotfiles/projects (expand-file-name "~/.local/source/") "Location of source code projects.") |
|||
(defvar dotfiles/passwords (expand-file-name "~/.password-store/") "Location of local password store.") |
|||
(defvar dotfiles/public-key "37AB1CB72B741E478CA026D43025DCBD46F81C0F" "GPG key to encrypt org files for.") |
|||
(defvar dotfiles/modules |
|||
dotfiles/modules-p |
|||
"All of the enabled modules.") |
|||
|
|||
(defvar dotfiles/home |
|||
user-emacs-directory |
|||
"Original value of `user-emacs-directory'.") |
|||
|
|||
(defvar dotfiles/cache |
|||
(expand-file-name "~/.cache/emacs") |
|||
"Redirection target of `user-emacs-directory'.") |
|||
|
|||
;; Override any of the available options configurations in a host file. Here's some examples to get started: |
|||
(defvar dotfiles/idle |
|||
0.0 |
|||
"Delay time before offering suggestions and completions.") |
|||
|
|||
;; + [[file:hosts/localhost.org][Termux]] |
|||
;; + [[file:hosts/raspberry.org][Raspberry]] |
|||
;; + [[file:hosts/acernitro.org][Acernitro]] |
|||
;; + [[file:hosts/virtualbox.org][Virtualbox]] |
|||
(defvar dotfiles/leader-key |
|||
"SPC" |
|||
"All powerful leader key.") |
|||
|
|||
;; Begin the process by loading any host specific overrides. The host configuration tangles, and loads (if it exist) using the systems name. |
|||
(defvar dotfiles/leader-key-global |
|||
(concat "C-" dotfiles/leader-key) |
|||
"Global prefix for the leader key.") |
|||
|
|||
(defvar dotfiles/projects |
|||
(expand-file-name "~/.local/source/") |
|||
"Location of source code projects.") |
|||
|
|||
(let ((host-file (concat dotfiles/home "/hosts/" system-name ".org"))) |
|||
(when (file-exists-p host-file) |
|||
(org-babel-load-file host-file))) |
|||
(defvar dotfiles/passwords |
|||
(expand-file-name "~/.password-store/") |
|||
"Location of local password store.") |
|||
|
|||
;; Modules |
|||
|
|||
;; Breaking down the project into logical units or chapters to keep the code more maintainable and organized. This is also a fundamental requirement to achieve the goal of modularity. Here are all of the available modules, also listed in the variable ~dotfiles/modules-p~. |
|||
|
|||
;; + [[file:modules/core.org][Core]] |
|||
;; + [[file:modules/editor.org][Editor]] |
|||
;; + [[file:modules/email.org][Email]] |
|||
;; + [[file:modules/desktop.org][Desktop]] |
|||
|
|||
;; By default all of the modules will load, override the variable ~dotfiles/modules~ in a host configuration to override this. |
|||
|
|||
|
|||
(dolist (m dotfiles/modules) |
|||
(let ((mod-file (concat dotfiles/home "/modules/" (symbol-name m) ".org"))) |
|||
(when (file-exists-p mod-file) |
|||
(org-babel-load-file mod-file)))) |
|||
(defvar dotfiles/public-key |
|||
"37AB1CB72B741E478CA026D43025DCBD46F81C0F" |
|||
"GPG key to encrypt org files for.") |
Write
Preview
Loading…
Cancel
Save
Reference in new issue