diff --git a/.emacs.d/lisp/init-eshell.el b/.emacs.d/lisp/init-eshell.el index 8b43ab3f..20dd21ec 100644 --- a/.emacs.d/lisp/init-eshell.el +++ b/.emacs.d/lisp/init-eshell.el @@ -303,4 +303,6 @@ This should be faster then `seq-uniq'." (when (fboundp 'helm-fish-completion-make-eshell-source) (setq helm-esh-pcomplete-build-source-fn #'helm-fish-completion-make-eshell-source))) +(require 'patch-eshell-inside-emacs) + (provide 'init-eshell) diff --git a/.emacs.d/lisp/patch-eshell-inside-emacs.el b/.emacs.d/lisp/patch-eshell-inside-emacs.el new file mode 100644 index 00000000..6c0301a5 --- /dev/null +++ b/.emacs.d/lisp/patch-eshell-inside-emacs.el @@ -0,0 +1,9 @@ +;;; Reported upstream, see #39596. +(defun ambrevar/set-inside-emacs () + "Export INSIDE_EMACS just like M-x shell does. +This is useful for programs like Guix that take provisions for Emacs." + (setenv "INSIDE_EMACS" (format "%s;%s" emacs-version "eshell"))) + +(add-hook 'eshell-mode-hook 'ambrevar/set-inside-emacs) + +(provide 'patch-eshell-inside-emacs)