Summary: | app-shells/esh-0.8.5-r1: esh-mode.el breaks Emacs' eshell | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Diego Elio Pettenò (RETIRED) <flameeyes> |
Component: | New packages | Assignee: | No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | emacs |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | https://tinderboxlogs.s3.amazonaws.com/tbamd64.excelsior.flameeyes.eu/app-emacs%3Amagit-1.1.1%3A20120711-015727.html | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 184166 |
Description
Diego Elio Pettenò (RETIRED)
2012-07-11 08:46:54 UTC
Something is fishy here: In toplevel form: magit-key-mode.el:1:1:Error: Symbol's value as variable is void: shared-lisp-mode-map In toplevel form: magit-topgit.el:25:1:Error: Symbol's value as variable is void: shared-lisp-mode-map A symbol shared-lisp-mode-map exists neither in magit nor in Emacs proper. I suspect that the error is caused by some other elisp package installed on your system. No idea which one. Can you find|grep for shared-lisp-mode-map in /usr/share/emacs/? localhost ~ # fgrep shared-lisp-mode-map /usr/share/emacs/ --exclude '*.elc' -r /usr/share/emacs/site-lisp/esh-mode.el:All commands in `shared-lisp-mode-map' are inherited by this map.") /usr/share/emacs/site-lisp/esh-mode.el: (nconc (make-sparse-keymap) shared-lisp-mode-map)) (that's app-shells/esh) This is what happens: - Emacs (since at least version 21.4) installs a file lisp/eshell/esh-mode.el{,c} which is part of eshell (Emacs command shell). - magit loads eshell at some point, which in turn loads esh-mode. - app-shells/esh installs esh-mode.el in ${SITELISP}. This is a completely different file though. - In load-path ${SITELISP} precedes the lisp directories of Emacs, therefore the file installed by app-shells/esh will take precedence and confuse eshell. Besides, esh-mode.el (of esh) is not functional. When I try to load it in Emacs, I get the error: Symbol's value as variable is void: shared-lisp-mode-map The obvious solution is that app-shells/esh shouldn't install the file. I forgot to mention: This is not related to Emacs 24. I can reproduce the magit compile failure also with Emacs 23. Should be fixed in esh-0.8.5-r2. |