diff --git a/pkgs/applications/editors/emacs/build-support/elpa.nix b/pkgs/applications/editors/emacs/build-support/elpa.nix index fcaef43953ef..50abadccf9d9 100644 --- a/pkgs/applications/editors/emacs/build-support/elpa.nix +++ b/pkgs/applications/editors/emacs/build-support/elpa.nix @@ -43,7 +43,9 @@ lib.extendMkDerivation { emacs --batch -Q -l "$elpa2nix" \ -f elpa2nix-install-package \ - "$src" "$out/share/emacs/site-lisp/elpa" + "$src" "$out/share/emacs/site-lisp/elpa" \ + ${if finalAttrs.turnCompilationWarningToError then "t" else "nil"} \ + ${if finalAttrs.ignoreCompilationError then "t" else "nil"} runHook postInstall ''; diff --git a/pkgs/applications/editors/emacs/build-support/elpa2nix.el b/pkgs/applications/editors/emacs/build-support/elpa2nix.el index 97cf2fd58a06..5b363b7b6640 100644 --- a/pkgs/applications/editors/emacs/build-support/elpa2nix.el +++ b/pkgs/applications/editors/emacs/build-support/elpa2nix.el @@ -5,8 +5,10 @@ (if (not noninteractive) (error "`elpa2nix-install-package' is to be used only with -batch")) (pcase command-line-args-left - (`(,archive ,elpa) - (progn (setq package-user-dir elpa) + (`(,archive ,elpa ,turn-compilation-warning-to-error ,ignore-compilation-error) + (progn (setq byte-compile-error-on-warn (string= turn-compilation-warning-to-error "t")) + (setq byte-compile-debug (string= ignore-compilation-error "nil")) + (setq package-user-dir elpa) (elpa2nix-install-file archive))))) (defun elpa2nix-install-from-buffer () @@ -31,13 +33,3 @@ The file can either be a tar file or an Emacs Lisp file." ;; Allow installing package tarfiles larger than 10MB (setq large-file-warning-threshold nil) - -(let ((flag (getenv "turnCompilationWarningToError"))) - (when (and flag - ;; we do not use `string-empty-p' because it requires subr-x in Emacs <= 26 - (not (string= flag ""))) - (setq byte-compile-error-on-warn t))) - -(let ((flag (getenv "ignoreCompilationError"))) - (when (string= flag "") - (setq byte-compile-debug t))) diff --git a/pkgs/applications/editors/emacs/build-support/melpa.nix b/pkgs/applications/editors/emacs/build-support/melpa.nix index bdca913e865d..876cf9a46ddc 100644 --- a/pkgs/applications/editors/emacs/build-support/melpa.nix +++ b/pkgs/applications/editors/emacs/build-support/melpa.nix @@ -185,7 +185,9 @@ lib.extendMkDerivation { emacs --batch -Q \ -l "$elpa2nix" \ -f elpa2nix-install-package \ - "$archive" "$out/share/emacs/site-lisp/elpa" + "$archive" "$out/share/emacs/site-lisp/elpa" \ + ${if finalAttrs.turnCompilationWarningToError then "t" else "nil"} \ + ${if finalAttrs.ignoreCompilationError then "t" else "nil"} runHook postInstall '';