Update autoloads.
[emacs.git] / admin / notes / elpa
blobe28d81e6d6e33ef6c9ddab7aafc99f9e7e85d5ed
1 NOTES ON THE EMACS PACKAGE ARCHIVE
3 Here are instructions on uploading files to the package archive at
4 elpa.gnu.org, for Emacs maintainers.  (If you are not a maintainer,
5 contact us if you want to submit a package.)
7 1. You will need login access to elpa.gnu.org.  You will also need to
8    get the FSF sysadmins to allow ssh access through the FSF firewall
9    for your local machine.  Ensure that your uid, USER, is in the
10    `elpa' group on elpa.gnu.org; this gives you write access to the
11    bzr repository from which the packages are managed.
13 2. Go to your bzr repository on your local machine.  Of, if you don't
14    have one (you should, if you're tracking Emacs bzr), make one:
16      cd $DEVHOME
17      bzr init-repo elpa/
18      cd elpa
20    Create a branch for elpa:
22      bzr branch bzr+ssh://USER@elpa.gnu.org/home/elpa/package-repo package-repo
24    Bind the branch:
26      cd package-repo/
27      echo "public_branch = bzr+ssh://USER@elpa.gnu.org/home/elpa/package-repo" >> .bzr/branch/branch.conf
28      bzr bind bzr+ssh://USER@elpa.gnu.org/home/elpa/package-repo
30    Now you should be able to do `bzr up' and `bzr commit'.
32 3. Changes in bzr do not immediately propagate to the user-facing tree
33    (i.e., what users see when they do `M-x list-packages').  That tree
34    is created by a (daily) cron job that does "bzr export".  If for
35    some reason you need to refresh the user-facing tree immediately,
36    run /home/elpa/bin/package-update.sh as the "elpa" user.
38    The Org mode dailies are not part of the repository.  After the
39    package-update.sh script creates the user-facing tree, it copies
40    the daily tarfile hosted on orgmode.org directly into that tree.
42 4. FIXME: How to actually upload a package file.