emacs-configuration: Adjust init.el to handle symlinks differently
* user-config/emacs/.emacs.d/init.el: Prior to moving emacs configuration to the guix store, this issue didn't occur; however, after doing so, ~/.emacs.d/config.el is a symlink to a store file. Because org-babel-load-file resolved symlinks before comparing their timestamps, and config.org is now a symlink to a store file with an unchanging timestamp, config.org changes never get tangled. To resolve this, instead we compare the symlink age of config.org to the tangled file.
This commit is contained in:
parent
cc621f0e62
commit
238a4f774e
|
@ -30,4 +30,18 @@
|
|||
; executable (new in org 9.6)
|
||||
(org-confirm-babel-evaluate nil))
|
||||
(when (file-exists-p config)
|
||||
(org-babel-load-file config t)))
|
||||
(when (or (not (file-exists-p el))
|
||||
(time-less-p
|
||||
(file-attribute-modification-time (file-attributes el))
|
||||
(file-attribute-modification-time (file-attributes config))))
|
||||
(org-babel-tangle-file config el)
|
||||
;; Make sure that tangled file modification time is
|
||||
;; updated even when `org-babel-tangle-file' does not make changes.
|
||||
;; This avoids re-tangling changed FILE where the changes did
|
||||
;; not affect the tangled code.
|
||||
(when (file-exists-p el)
|
||||
(set-file-times el))
|
||||
|
||||
(byte-compile-file el)
|
||||
(load-file (byte-compile-dest-file el))
|
||||
(message "Compiled and loaded %s" el))))
|
||||
|
|
Loading…
Reference in New Issue