Subject: bug#6805: 24.0.50; package--dir assumes that Emacs is installed

From: Ævar Arnfjörð Bjarmason <[email-masked]>
Date: Thu, 5 Aug 2010 18:07:39 +0000

When I compile Emacs from Git and run it without doing "make install" I
run into this in package.el:

    (unless pkg-dir
      (error "Internal error: could not find directory for %s-%s"
	     name version-str))

It's failing that assertion because package--dir assumes that Emacs is
already installed:

    package-directory-list is a variable defined in `package.el'.
    Its value is
    ("/usr/local/share/emacs/24.0.50/site-lisp/elpa"
"/usr/local/share/emacs/site-lisp/elpa")

It shouldn't do that. Usually Emacs runs fine if you build it and don't
install it.

In GNU Emacs 24.0.50.2 (i686-unknown-kfreebsd7.3-gnu, GTK+ Version 2.20.1)
 of 2010-08-05 on k
Windowing system distributor `The X.Org Foundation', version 11.0.10706000
configured using `configure  'CFLAGS=-O0 -ggdb3''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8
  default enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  eldoc-mode: t
  icomplete-mode: t
  iswitchb-mode: t
  show-paren-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-x b M <return> M-< C-h f p a c k a g <tab> a c <tab>
- 1 <tab> <return> C-x o <tab> <return> C-x 1 C-n C-n
C-n C-n C-n C-x b <return> C-x k C-x b <return> C-x
b <return> C-p C-p C-e M-b M-b M-b M-b M-b C-b C-SPC
C-e C-b C-b M-w C-x b * <backspace> s c r <return>
C-y C-a a M-f C-/ C-e M-b M-b M-b " M-d p a c k a g
e " C-x b M <return> C-x b <return> C-f C-k " 1 ' <backspace>
. 0 " ) C-x C-e C-x b <return> C-x k C-x b <return>
M-< C-s p a c k a g e - - d i r C-n C-n M-f M-f M-f
M-f C-f C-f C-h v <return> M-b M-b C-h v <return> C-x
1 C-h v <return> C-x o C-x o C-e M-b M-b C-h v <return>
C-x 1 M-x r e p o <tab> o <tab> <backspace> r t <tab>
<return> p a c k a g e - - d i r SPC s a s <backspace>
<backspace> <backspace> a s s u m e s SPC t h a t SPC
E m a c s SPC i s SPC i n s t a l l e d <return> C-p
C-p C-p C-p C-p M-f M-f a b C-f M-d g m a i l C-c C-s
n C-g C-x k <return> n C-x b b <backspace> b <return>
C-x b m a i <return> C-x k y C-n M-x r e p o <tab>
r <tab> <return>

Recent messages:
Checking 87 files in /home/avar/g/emacs/lisp/calc...
Checking 43 files in /home/avar/g/emacs/lisp/obsolete...
Checking for load-path shadows...done
Convert non-ASCII letters to hexadecimal? (y or n)
Send this bug report to the Emacs maintainers? (y or n)
Quit
Buffer *mail to [email-masked]* modified; kill anyway? (y or n)
Please answer y or n.  Buffer *mail to [email-masked]*
modified; kill anyway? (y or n)
Buffer *mail to [email-masked]* modified; kill anyway? (y or n)
Making completion list...

Load-path shadows:
/home/avar/g/elisp/nopaste/nopaste hides /home/avar/g/elisp/_local/nopaste
/home/avar/g/elisp/shellarchive/find-cmd hides /home/avar/g/emacs/lisp/find-cmd
/home/avar/g/elisp/css-mode hides /home/avar/g/emacs/lisp/textmodes/css-mode
/home/avar/g/elisp/cperl-mode/cperl-mode hides
/home/avar/g/emacs/lisp/progmodes/cperl-mode

Features:
(shadow sort gnus-util mail-extr message sendmail rfc822 mml mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader
emacsbug pp multi-isearch vc-git eldoc find-func help-mode easymenu view
package edit-server derived server slime-autoloads easy-mmode cc-styles
cc-align cc-engine cc-vars cc-defs regexp-opt byte-opt warnings bytecomp
byte-compile advice help-fns advice-preload edmacro kmacro icomplete
iswitchb paren tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win
x-dnd tool-bar dnd fontset image fringe lisp-mode register page menu-bar
rfn-eshadow timer select scroll-bar mldrag mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev loaddefs button
minibuffer faces cus-face files text-properties overlay md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind dynamic-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)