emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Friendly discussion about (package-initialize)


From: Eli Zaretskii
Subject: Re: Friendly discussion about (package-initialize)
Date: Thu, 10 Aug 2017 22:08:45 +0300

> From: Radon Rosborough <address@hidden>
> Date: Thu, 10 Aug 2017 10:06:34 -0700
> Cc: Stefan Monnier <address@hidden>, address@hidden
> 
> Now there is also the question of where it is appropriate to call
> `package-initialize'. IMO, the only appropriate place to call it is in
> the user's init-file. Doing it anywhere else smells like unnecessary
> magic, and limits customizability. For example, calling it in
> startup.el after loading the init-file means that package
> customizations cannot be put in the init-file (unless you use
> `after-init-hook', an advanced and rather nonstandard approach), but
> the package management system still works after init. Can you possibly
> think of any setup that would be *more* confusing to new users?

I'm probably missing some details here, but in principle I don't see
here anything that should be confusing or hard to get right.  We do
that with other tricky stuff, like customizations of the basic faces,
which we read from .emacs after Emacs already started and displayed
its first frame.  And using hooks is not such scary stuff for new
users, either.  To say nothing of the fact that new users aren't
expected to mess with this anyway, they should just use what package
installation procedure arranged for.

> > If we call package-initialize from startup.el, why does it have to
> > also be called from the init files?
> 
> IMO, it should not be called anywhere. I think having it only called
> in startup.el would be a reasonable compromise. Having Emacs insist on
> putting the call into the init-file, but then *also* calling it in
> startup.el, makes no sense.

Thanks, but that doesn't really answer my question.  I asked why do we
put a call to package-initialize into user init file when we already
have that very call in startup.el.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]