From c2c5e04d53ba91e22cf43ac42a54fb0606fb9465 Mon Sep 17 00:00:00 2001 From: Alan Pearce Date: Tue, 25 Apr 2023 23:12:51 +0200 Subject: emacs: native-compile init.el ahead of time --- user/settings/emacs.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'user/settings/emacs.nix') diff --git a/user/settings/emacs.nix b/user/settings/emacs.nix index 755b8b95..9c9f9660 100644 --- a/user/settings/emacs.nix +++ b/user/settings/emacs.nix @@ -6,6 +6,8 @@ let inherit (pkgs) stdenv; + nativeCompileDirectory = "${config.xdg.cacheHome}/emacs/native-compile/"; + darwinPath = pkgs.runCommandLocal "path_helper " { } '' eval $(/usr/libexec/path_helper) echo -n $PATH > $out @@ -165,7 +167,9 @@ in (setq insert-directory-program "${pkgs.coreutils-prefixed}/bin/gls")) (with-eval-after-load 'dired (setq dired-use-ls-dired t)) - (setq exec-path (parse-colon-path (setenv "PATH" "${pkgs.clang}/bin:${pkgs.gcc}/bin:${pkgs.lib.readFile darwinPath}"))) + (setq exec-path (parse-colon-path (setenv "PATH" "${pkgs.lib.readFile darwinPath}")) + native-compile-target-directory "${nativeCompileDirectory}") + (add-to-list 'native-comp-eln-load-path "${nativeCompileDirectory}" :append) ''; }; home.packages = [ @@ -174,13 +178,13 @@ in xdg.configFile."emacs/early-init.el" = { source = ../emacs/early-init.el; onChange = '' - ${config.programs.emacs.finalPackage}/bin/emacs -Q -batch -f batch-byte-compile .config/emacs/early-init.el + PATH="$PATH:/usr/libexec/DeveloperTools/" ${config.programs.emacs.finalPackage}/bin/emacs --batch --funcall batch-native-compile .config/emacs/early-init.el ''; }; xdg.configFile."emacs/init.el" = { source = ../emacs/init.el; onChange = '' - ${config.programs.emacs.finalPackage}/bin/emacs -Q -batch -f batch-byte-compile .config/emacs/init.el + PATH="$PATH:/usr/libexec/DeveloperTools/" ${config.programs.emacs.finalPackage}/bin/emacs --batch --funcall batch-native-compile .config/emacs/init.el ''; }; -- cgit 1.4.1