This patch packages mu4e as an Emacs lisp package based on the mu4e output of the multiple-output package mu, which makes mu4e a good citizen of Emacs lisp packages in two aspects. First, mu4e now utilizes the Emacs lisp package infrastructure in Nixpkgs. This allows users who want to do AOT native compilation for non-default Emacs variants[0] to build only mu4e itself instead of the whole mu package[1]. Second, mu4e now conforms to the Emacs builtin package manager[2]. Without this patch, mu4e autoloaded commands do not work out-of-the-box[3] because its directory is added to load-path by site-start.el after the initialization of package-directory-list, which causes package-activate-all to not load mu4e-autoloads.el. This patch fixes this issue when mu4e is installed to Emacs using the withPackages wrapper[4]. [0]: such as emacs-pgtk [1]: mu.override { emacs = emacs-pgtk; } [2]: package.el [3]: either (require 'mu4e) or (require 'mu4e-autoloads) is needed to be called before an autoloaded command is called [4]: emacs-pgtk.pkgs.withPackages (epkgs: [ epkgs.mu4e ]) |
||
---|---|---|
.. | ||
manual |