diff options
Diffstat (limited to 'admin/notes')
-rw-r--r-- | admin/notes/BRANCH | 7 | ||||
-rw-r--r-- | admin/notes/elpa | 62 |
2 files changed, 29 insertions, 40 deletions
diff --git a/admin/notes/BRANCH b/admin/notes/BRANCH index 53f3d9603c..9f09135f20 100644 --- a/admin/notes/BRANCH +++ b/admin/notes/BRANCH @@ -23,3 +23,10 @@ on what branch at any time. If you are looking at this file in a branch other than the trunk, there may be some branch-specific documentation below this line. ________________________________________________________________________ + +* elpa + + This branch does not contain a copy of Emacs, but of the Emacs Lisp + package archive (elpa.gnu.org). See admin/notes/elpa for further + explanation, and the README file in the branch for usage + instructions. diff --git a/admin/notes/elpa b/admin/notes/elpa index e28d81e6d6..cbea8cc1df 100644 --- a/admin/notes/elpa +++ b/admin/notes/elpa @@ -1,42 +1,24 @@ NOTES ON THE EMACS PACKAGE ARCHIVE -Here are instructions on uploading files to the package archive at -elpa.gnu.org, for Emacs maintainers. (If you are not a maintainer, -contact us if you want to submit a package.) - -1. You will need login access to elpa.gnu.org. You will also need to - get the FSF sysadmins to allow ssh access through the FSF firewall - for your local machine. Ensure that your uid, USER, is in the - `elpa' group on elpa.gnu.org; this gives you write access to the - bzr repository from which the packages are managed. - -2. Go to your bzr repository on your local machine. Of, if you don't - have one (you should, if you're tracking Emacs bzr), make one: - - cd $DEVHOME - bzr init-repo elpa/ - cd elpa - - Create a branch for elpa: - - bzr branch bzr+ssh://USER@elpa.gnu.org/home/elpa/package-repo package-repo - - Bind the branch: - - cd package-repo/ - echo "public_branch = bzr+ssh://USER@elpa.gnu.org/home/elpa/package-repo" >> .bzr/branch/branch.conf - bzr bind bzr+ssh://USER@elpa.gnu.org/home/elpa/package-repo - - Now you should be able to do `bzr up' and `bzr commit'. - -3. Changes in bzr do not immediately propagate to the user-facing tree - (i.e., what users see when they do `M-x list-packages'). That tree - is created by a (daily) cron job that does "bzr export". If for - some reason you need to refresh the user-facing tree immediately, - run /home/elpa/bin/package-update.sh as the "elpa" user. - - The Org mode dailies are not part of the repository. After the - package-update.sh script creates the user-facing tree, it copies - the daily tarfile hosted on orgmode.org directly into that tree. - -4. FIXME: How to actually upload a package file. +The GNU Emacs package archive, at elpa.gnu.org, is managed using Bzr. +The Bzr branch is hosted on Savannah, and you can check it out with + + bzr branch bzr+ssh://USER@bzr.savannah.gnu.org/emacs/elpa elpa + +Changes made to this branch propagate to elpa.gnu.org as follows. +There exists a copy of the elpa branch on that machine. Someone with +access must log in, pull the latest changes from Savannah, and run a +"deployment" script that generates the content at the web-visible +location http://elpa.gnu.org/packages. + +The reason things are set up this way, instead of using the package +upload utilities in package-x.el, is so that Emacs hackers can easily +edit the contents of the Savannah "elpa" branch, with the aid of +version control. (For instance, multi-file packages are stored on the +Bzr branch in source form, not as tarfiles.) Because deployment is a +semi-manual process, this allows us some flexibility in making changes +to the branch on Savannah. Furthermore, one can use the elpa branch +to deploy a "local" copy of the package archive, for testing. + +For details on how to use the elpa branch, see that README file in +that branch. |