aboutsummaryrefslogtreecommitdiff
path: root/modules/system-defaults.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-24 16:13:01 -0500
committerCraig Jennings <c@cjennings.net>2026-05-24 16:13:01 -0500
commit9055708eb0960f63e1c5aa9094d9fdcb694e03c7 (patch)
treee2a95756db571d5b04356bbf4ad3fe7d7984665b /modules/system-defaults.el
parentdf8b03e1d363c0867b31f87357c028342ceaee52 (diff)
downloaddotemacs-9055708eb0960f63e1c5aa9094d9fdcb694e03c7.tar.gz
dotemacs-9055708eb0960f63e1c5aa9094d9fdcb694e03c7.zip
docs(load-graph): seed module inventory and annotate foundation headers
I started the init.el load-graph classification with the foundation batch. I added docs/design/module-inventory.org as the living per-module inventory and annotated the seven foundation modules (system-lib, user-constants, host-environment, system-defaults, keyboard-compat, keybindings, config-utilities) with the load-graph header contract: layer, category, load shape, eager reason, top-level side effects, runtime requires, and direct-test-load safety. I changed no load order, so init.el keeps its current eager order. The inventory records one hidden dependency for Phase 2: system-defaults uses host-environment and user-constants symbols at load while declaring them eval-when-compile, so the compiled module cannot load standalone.
Diffstat (limited to 'modules/system-defaults.el')
-rw-r--r--modules/system-defaults.el15
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/system-defaults.el b/modules/system-defaults.el
index d0b9f8357..33d93bbc7 100644
--- a/modules/system-defaults.el
+++ b/modules/system-defaults.el
@@ -2,6 +2,21 @@
;; author: Craig Jennings <c@cjennings.net>
;;
;;; Commentary:
+;;
+;; Layer: 1 (Foundation).
+;; Category: F/S.
+;; Load shape: eager.
+;; Eager reason: establishes core Emacs behavior (encoding, clipboard,
+;; scrolling, kill/quit defaults) the first interactive session relies on.
+;; Top-level side effects: mutates global defaults (many `setq'), advises
+;; `display-warning', adds a `display-buffer-alist' entry, remaps one global
+;; key.
+;; Runtime requires: autorevert, server, bookmark; host-environment
+;; (`env-bsd-p') and user-constants (`user-home-dir') are read at load but
+;; currently only required via eval-when-compile — Phase 2 to make explicit.
+;; Direct test load: conditional (host-environment and user-constants must load
+;; first; the compiled module cannot resolve them standalone yet).
+;;
;; Loads during init to set sane defaults: UTF-8 everywhere, quiet prompts, synced clipboards,
;; and hands-off async shell buffers. Nothing to call—just launch Emacs and the environment is ready.
;; Native compilation is tuned for performance and its warnings get logged to comp-warnings.log.