I showed you my source code, pls respond
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Christopher James Hayward 9733e2736d Split interface / projects from readme 4 years ago
config Add comment 4 years ago
docs Update headers 4 years ago
hosts Split host configs from README 4 years ago
modules Split interface / projects from readme 4 years ago
.gitattributes Fix attributes 4 years ago
.gitignore Ignore .el for .org source instead 4 years ago
.gitmodules Move submodule 4 years ago
LICENSE Update README/LICENSE 4 years ago
README.org Split interface / projects from readme 4 years ago
init.el Add capture module 4 years ago

README.org

Dotfiles

/chris/dotfiles/src/commit/9733e2736d1ad20f2e1768aef060dd3f0266ad7d/docs/images/desktop-alt.png

Immutable GNU Emacs dotfiles. Built for Life, Liberty, and the Open Road.

  • 100% Literate

  • 100% Immutable

  • 100% Reproducible

Init

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/browser 
  (getenv "BROWSER") 
  "Default system web browser.")

(defvar dotfiles/language 
  (getenv "LANG") 
  "Default system dictionary language.")

(defconst dotfiles/modules-p 
  '(core 
    editor
    ;; email
    desktop
    writing
    website
    capture
    projects
    interface) 
  "All of the available modules.")

(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'.")

(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.")

(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.")

Hosts

Each host machines configuration is loaded immediately after the options are declared, before any configuration is applied. This allows system to system control while remaining immutable. Override any of the available options configurations in a host file. Here's some examples to get started:

Begin the process by loading any host specific overrides. The host configuration tangles, and loads (if it exist) using the systems name.

(let ((host-file (concat dotfiles/home "/hosts/" system-name ".org")))
  (when (file-exists-p host-file)
    (org-babel-load-file host-file)))

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.

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))))