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. |
;; 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