If I'm running an Emacs executable from emacsWithPackages as my main
programming environment, and I'm hacking on Emacs, or the Emacs
packaging in Nixpkgs, or whatever, I don't want the Emacs packages
from the wrapper to show up in the load path of that child Emacs. It
results in differing behaviour depending on whether the child Emacs is
run from Emacs or from, for example, an external terminal emulator,
which is very surprising.
To avoid this, pass another environment variable containing the
wrapper site-lisp path, and use that value to remove the corresponding
entry in EMACSLOADPATH, so it won't be propagated to child Emacsen.
* pkgs/applications/editors/emacs/site-start.el (tramp-sh): Use
correct feature name
Tramp upstream recently dropped the autoload cookie from
tramp-remote-path. This makes Emacs error when trying to load tramp.
Using the correct feature name fixes this.
This adds subdirectories of `share/emacs/site-lisp/` in every path in
`NIX_PROFILES` to `load-path` to allow loading of more complex
libraries like `mu4e`.
Fixes#33412
`site-start.el` is the file loaded on startup, containing nix-specific
customizations like adding paths in `NIX_PROFILES` to the
emacs-specific search-path (`load-path`) or making man-pages in these
directories discoverable.
This commit removes all references to emacs24 with the exception of
emacs24-macports. The two folders in `pkgs/applications/editors` named
`emacs-24` and `emacs-24` are consolidated to a new `emacs` folder.
Various parts in nixpkgs also referenced `emacs24Packages` (pinned to
`emacs24`) explicitly where `emacsPackages` (non-pinned) is more
appropriate. These references get fixed by this commit too.