emacs-devel
[Top][All Lists]
Advanced

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

Integrating package.el (was Re: unsupported packages area in the Emacs r


From: Phil Hagelberg
Subject: Integrating package.el (was Re: unsupported packages area in the Emacs repo)
Date: Sat, 02 Jan 2010 21:38:58 -0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

Tom Tromey <address@hidden> writes:

>>>>>> "Ted" == Ted Zlatanov <address@hidden> writes:
> Ted> Can you and Phil give us your view?  How would you integrate ELPA
> Ted> (package.el) with Emacs, specifically using the DVCS features?
>
> I don't think DVCS matters very much.

I agree that users should not need a DVCS installed on their system to
use packages. However, leveraging a DVCS to get packages from their
authors to a centralized listing seems like a really good idea.

> Basically what is needed is to integrate package.el into Emacs' startup
> sequence.  This requires some build-time changes, so that metadata for
> packages is extracted from the source tree; and it requires some source
> changes, so that such packages are not automatically added to load-path,
> but instead are added by package activation.  Only packages that might
> be shipped separately will need this treatment.
>
> Just doing this would be pretty good.  There are a few feature requests
> from ELPA users that would be nice to implement, that require similar
> treatment, but that could comfortably be done later.

I've actually been thinking in even more incremental steps. Installing
package.el in Emacs without altering any of the existing Emacs code
would be an easy first step and would give some immediate benefit in
terms of packages that are not included in Emacs.

The next step would be to work on package submission. If the centralized
system has a list of packages mapped to a list of DVCS repositories,
they could be polled periodically and all tags matching a certain
convention (say, starting with "v" and followed by a dotted number
series) would be treated as package. That version would then be
processed and published to a downloadable location for clients to pull
in.

I wasn't thinking about integrating packages that Emacs already contains
until after these steps were complete. One thing that may be infeasible
but would certainly simplify things a lot would be if we spun off
packages like org-mode into their own separate DVCS repository and
removed them from the Emacs source tree before making package.el treat
them as packages. However, this may cause some unwanted chaos; I don't
want to barge in and create a lot of work for people. It might also
imply that network access would be necessary to perform a full build of
Emacs since it would have to download bundled packages at compilation
time. Not sure if that is a serious problem.

Anyway, I welcome thoughts on this.

-Phil




reply via email to

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