diff options
| author | Craig Jennings <c@cjennings.net> | 2026-04-22 00:22:23 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-04-22 00:22:23 -0500 |
| commit | a80477572b267d2fbf1684d2ef4b34bdb560cfc3 (patch) | |
| tree | cdaa453d0ded2dfdf7f324a3d0d13ca4f4c3fe2b | |
| parent | b9f4d440ca7c04bc0f3b561a2e95d08e8eac49b9 (diff) | |
| download | dotemacs-a80477572b267d2fbf1684d2ef4b34bdb560cfc3.tar.gz dotemacs-a80477572b267d2fbf1684d2ef4b34bdb560cfc3.zip | |
fix: load freshness, wttrin path, compile-time package init
Set load-prefer-newer in early-init.el. Emacs was loading the older .elc files even when the .el source was newer, warning on every load but still using the stale byte code.
Point weather-config.el's wttrin :load-path at /home/cjennings/code/emacs-wttrin. The previous value was /home/cjennings/code/wttrin, which does not exist, so use-package could not load the package.
Add (package-initialize) to the Makefile compile target. Without it, batch byte-compile cannot see ELPA packages like git-gutter, git-timemachine, forge, and difftastic, which produced "Cannot load" warnings on every run.
| -rw-r--r-- | Makefile | 1 | ||||
| -rw-r--r-- | early-init.el | 8 | ||||
| -rw-r--r-- | modules/weather-config.el | 2 |
3 files changed, 10 insertions, 1 deletions
@@ -263,6 +263,7 @@ compile: @echo "Byte-compiling all modules..." @$(EMACS_BATCH) -L $(MODULE_DIR) \ --eval "(progn \ + (package-initialize) \ (setq byte-compile-error-on-warn nil) \ (batch-byte-compile))" $(MODULE_FILES) @echo "✓ Compilation complete" diff --git a/early-init.el b/early-init.el index c1cd54c8..9f90f292 100644 --- a/early-init.el +++ b/early-init.el @@ -65,6 +65,14 @@ (setq native-comp-deferred-compilation nil) ;; Disable async/deferred compilation (setq native-comp-async-report-warnings-errors nil) ;; Silence async warnings +;; ------------------------------- Load Freshness ------------------------------ +;; Prefer newer .el source over stale .elc byte-compiled files. Without this, +;; Emacs loads the .elc even when the .el has been modified more recently and +;; only emits a warning. Setting this in early-init.el ensures init.el itself +;; also benefits. + +(setq load-prefer-newer t) + ;; --------------------------- Warning Notifications --------------------------- ;; skip warnings but notify me about errors diff --git a/modules/weather-config.el b/modules/weather-config.el index bf71ef9c..0b15021b 100644 --- a/modules/weather-config.el +++ b/modules/weather-config.el @@ -14,7 +14,7 @@ ;; Uncomment the next line to use vc-install instead of local directory: ;; :vc (:url "https://github.com/cjennings/emacs-wttrin" :rev :newest) :demand t ;; REQUIRED: mode-line must start at Emacs startup - :load-path "/home/cjennings/code/wttrin" + :load-path "/home/cjennings/code/emacs-wttrin" :preface ;; Change this to t to enable debug logging ;; (setq wttrin-debug t) |
