fix(profiles): no bootstrap file for non-bootloaders

If Doom doesn't live in ~/.emacs.d or ~/.config/emacs, then it cannot
play the role of bootloader, so opt out of generating the profile
bootstrappper in this case.

That said, don't disable the profile system entirely; it can still be
useful for internal, noninteractive, and sandbox use.
This commit is contained in:
Henrik Lissner 2022-09-17 14:50:23 +02:00
parent 753b479ea6
commit 36a9637e79
No known key found for this signature in database
GPG key ID: B60957CA074D39A3
3 changed files with 12 additions and 6 deletions

View file

@ -6,7 +6,9 @@
;;; Variables
(defvar doom-cli-known-profiles-file
(file-name-concat doom-cache-dir "known-profiles.el")
(file-name-concat doom-cache-dir (format "profiles.%s.el" (or (car doom-profile) "@")))
;; REVIEW: Use `doom-profile-data-dir' in v3
;; (file-name-concat doom-profile-data-dir "known-profiles.el")
"TODO")
@ -68,8 +70,6 @@
(dolist (p removed) (print! (item "Removed %S") (car p)))
(dolist (p changed) (print! (item "Changed %S") (car p)))
(doom-file-write doom-cli-known-profiles-file (list new-profiles) :mode #o600)
(print! (success "Regenerated profile manifest: %s")
(path doom-cli-known-profiles-file))
(doom-profiles-save new-profiles doom-profiles-bootstrap-file)
(print! (success "Regenerated profile init file: %s")
(path doom-profiles-bootstrap-file)))))))))

View file

@ -45,7 +45,8 @@ OPTIONS:
Defaults to the maximum number of threads (or 1, if your CPU's threadcount
can't be determined)."
:benchmark t
(call! '(profiles sync "--reload"))
(when (doom-profiles-bootloadable-p)
(call! '(profiles sync "--reload")))
(run-hooks 'doom-before-sync-hook)
(add-hook 'kill-emacs-hook #'doom-sync--abort-warning-h)
(when jobs