Merge from trunk.
[bpt/emacs.git] / admin / notes / elpa
1 NOTES ON THE EMACS PACKAGE ARCHIVE
2
3 The GNU Emacs package archive, at elpa.gnu.org, is managed using a Bzr
4 branch named "elpa", hosted on Savannah. To check it out:
5
6 bzr branch bzr+ssh://USER@bzr.savannah.gnu.org/emacs/elpa elpa
7 cd elpa
8 echo "public_branch = bzr+ssh://USER@bzr.savannah.gnu.org/emacs/elpa" >> .bzr/branch/branch.conf
9 bzr bind bzr+ssh://USERNAME@bzr.savannah.gnu.org/emacs/elpa
10 [create task branch for edits, etc.]
11
12 Changes to this branch propagate to elpa.gnu.org in a semi-manual way.
13 There exists a copy of the elpa branch on that machine. Someone with
14 access logs in, pulls the latest changes from Savannah, and runs a
15 "deployment" script. This script (which is itself kept in the Bzr
16 branch) generates the content visible at http://elpa.gnu.org/packages.
17
18 The reason we set things up this way, instead of using the package
19 upload commands in package-x.el, is to let Emacs hackers conveniently
20 edit the contents of the "elpa" branch. (In particular, multi-file
21 packages are stored on the branch in source form, not as tarfiles.)
22
23 It is easy to use the elpa branch to deploy a "local" copy of the
24 package archive. For details, see the README file in the elpa branch.