Hello, I'm Richard Stallman,
founder of the GNU project.
In 1976, I developed the first
Emacs editor with some help
from Guy Steele.
Then, shortly after starting to develop
the GNU operating system in 1984,
I wanted an Emacs editor for it.
So I started writing GNU Emacs in September 1984.
Several years ago we decided to move
many of the Emacs Lisp packages outside
the core Emacs distribution into
a separate package archive that we call the Emacs Lisp package archive ELPA.
There were two main reasons for this.
One is to make the Emacs distribution smaller
so every user wouldn't have to
get all the packages
and install all the packages.
And the other reason was to make it possible to
release individual packages
separately from Emacs releases.
Now, at that point somehow we decided to
support loading packages from
a variety of different Emacs Lisp package archives
and ours would be called the GNU ELPA,
but ELPA could be any other.
Now, I think that naming was a mistake.
We should have meant, we should have decided that ELPA
referred to our package archive
and any other package archive
should be called some other name.
Oh, well! Uh this is a mistake,
I believe, because it leads
to a lot of confusion.
It would have been clearer
if we had used the other naming.
Because the difference between
having a package in core Emacs and having it in GNU ELPA,
is purely a practical convenience matter.
Convenience of distribution
and convenience of maintenance.
We wanted to be able to move packages
between the two
whenever that was convenient.
So, to make that possible
we insisted on getting copyright
assignments for packages in GNU ELPA
just the same way we do for packages in core Emacs.
Having the facility for installing
packages from package archives,
led to a tremendous boost in the
development and release of Emacs packages.
Unfortunately there was a problem with
the way that was done.
For the most part, the developers of these packages
wouldn't even tell us about them.
They posted them in another package archive
where we didn't know about them
and no attempt was made to try to fit them
into Emacs so that they could make sense
as parts of the Emacs distribution.
This led to both moral problems,
(packages that depended on
non-free software in order to be usable)
and technical problems,
because the developers of those packages
didn't coordinate with us
about how to make it useful and
convenient and clean to have them in Emacs.
So, the idea of NonGNU ELPA
is an effort to smooth these things out.
The fundamental plan of
NonGNU ELPA is that
we won't ask for copyright assignments
for those packages.
So, we won't be able to put them into core Emacs;
at least not easily,
but we will have some control over how we distribute them.
We can put any package into NonGNU ELPA
as long as it's free software.
If we like it, we can set up that way for users to get it.
We could put the package in exactly as it is
if there's no problem at all with it.
We can make an arrangement
with the package's developers
to work on it with us and maintain it
directly for distribution by NonGNU ELPA,
but if they are not interested,
we can put it in ourselves,
and if we need to make any changes,
we can do so.
So, NonGNU ELPA is not meant to be
just a way that others can distribute their packages.
It's meant, at least in
a minimal technical sense,
to work with GNU Emacs,
and we'll make changes if necessary,
so that it works smoothly with Emacs.
And this means that we're going to maintain it differently from GNU ELPA.
Well, GNU ELPA is hosted in a way that is actually rather inconvenient.
It is one single Git repository.
And so anybody that has access to write it
can write any part of it.
There are many different packages in there, maintained by different people,
and we have no way to give each one of
them access to per own package
and not to the others.
Well, with NonGNU ELPA, we plan to fix that.
The idea is to have a single Git repository
where you can download various packages from.
But they won't be maintained there.
Each of those packages will be
copied automatically from some other place.
Probably some other repository
where the right people have access to work on it.
And this way we can avoid giving
a gigantic number of people
access to every part of it.
So far NonGNU ELPA is just a plan,
we need people to implement the plan.
So, if you would like to help,
please write to me.
I think this is a very important step for progress
and it's got to be implemented.
Thanks and happy hacking!