Re: debian-startup.el question
Peter S Galbraith <p.galbraith@globetrotter.net> writes:
> - I'm adding /usr/share/emacs/site-lisp/ to the load-path so emacs can find
> anything Debian packages put there.
Ah, it initially looked like `debian-startup' did this itself, but I
guess that was artifact of my screwing around.
> - I'm using (debian-startup 'emacs) and not (debian-startup 'emacs21)
Since `debian-startup' adds "/etc/emacs/site-start.d" itself, the
effect of using `emacs' instead of `emacs21' seems to be that it won't
see emacs21-specific packages, which is wrong, since I'm in fact using
emacs 21.
> > certainly above doesn't seem to address the problem I noted (the
> > wierd-ass use of `if').
>
> http://bugs.debian.org/116126
That's an entirely different bug.
The problem is this code (from /usr/share/emacs/site-lisp/debian-startup.el):
(defun debian-startup (flavor)
(if (not (boundp 'debian-emacs-flavor))
(defconst debian-emacs-flavor flavor
"A symbol representing the particular debian flavor of emacs that's
running. Something like 'emacs20, 'xemacs20, etc.")
(let ((common-dir "/etc/emacs/site-start.d")
(flavor-dir (concat "/etc/" (symbol-name flavor) "/site-start.d")))
(debian-run-directories flavor-dir common-dir))))
If you call `debian-startup' once, it will call defconst to define
`debian-emacs-flavor', but it _won't_ call `debian-run-directories', so
nothing actually gets initialized. To get it to intialize things
properly, I have to call `debian-startup' twice (the second time, it
will see that `debian-emacs-flavor' is defined, and execute the rest of
the `if').
This is why I'm surprised that it works for you, and I wonder _how_ it
works for you. Is your copy of debian-startup.el different?
-Miles
--
`The suburb is an obsolete and contradictory form of human settlement'
Reply to: