feat(emacs): Add prebuilt Doom option using nix-doom-emacs-unstraightened
Implement pre-built Doom Emacs packages for the live USB image, eliminating the need to run `doom sync` after first boot. Changes: - Add nix-doom-emacs-unstraightened flake input - Add homeModule to all three module sets (nixos, unstable, darwin) - Add `prebuiltDoom` option to emacs role (default: false) - Enable prebuiltDoom for live-usb configuration - Pin custom packages in packages.el for deterministic builds: - claude-code-ide, gptel-tool-library, beads When prebuiltDoom=true, all Doom packages are compiled at nix build time using emacs-overlay. The doom configuration is stored in the nix store (read-only), and no `doom sync` is required at runtime. This is ideal for: - Live USB images - Immutable/reproducible systems - Offline deployments Closes: nixos-configs-1wd
This commit is contained in:
@@ -51,11 +51,21 @@
|
||||
|
||||
;; (package! org-caldav)
|
||||
|
||||
;; Note: Packages with custom recipes must be pinned for nix-doom-emacs-unstraightened
|
||||
;; to build deterministically. Update pins when upgrading packages.
|
||||
|
||||
(package! gptel :recipe (:nonrecursive t))
|
||||
|
||||
(package! claude-code-ide
|
||||
:recipe (:host github :repo "manzaltu/claude-code-ide.el"))
|
||||
:recipe (:host github :repo "manzaltu/claude-code-ide.el")
|
||||
:pin "760240d7f03ff16f90ede9d4f4243cd94f3fed73")
|
||||
|
||||
(package! gptel-tool-library
|
||||
:recipe (:host github :repo "aard-fi/gptel-tool-library"
|
||||
:files ("*.el")))
|
||||
:files ("*.el"))
|
||||
:pin "baffc3b0d74a2b7cbda0d5cd6dd7726d6ccaca83")
|
||||
|
||||
(package! beads
|
||||
:recipe (:type git :repo "https://codeberg.org/ctietze/beads.el.git"
|
||||
:files ("lisp/*.el"))
|
||||
:pin "f40a6461d3c0fa0969311bbb6a1e30d1bba86c88")
|
||||
|
||||
Reference in New Issue
Block a user