Emacs Lisp Package Archive

Why write package.el?
I use a fair number of add-on packages for Emacs, and I was tired of hacking my .emacs to set up each one. Also, I wanted to be able to upgrade my Emacs and have out-of-date private packages automatically be disabled in favor of newer versions built in to the new Emacs. package.el solves both these problems.
Why not use the XEmacs package system?
I'm told that it would be simpler to write a new package system than to port the XEmacs one to Emacs. Also from what I can tell (I'm not an XEmacs user) the XEmacs system doesn't provide the same set of features as ELPA.
How do I know what packages can be downloaded from ELPA?
Type M-x package-list-packages in Emacs. Then in the *Packages* buffer, type r. This will download the latest list of available packages.
How can I search for a package in ELPA?
As above, go into the package menu. Then you can isearch (or whatever) through package names and descriptions. (If you don't see descriptions, make sure you are using the latest version of package.el.)
How can I get more information about a package before downloading it?
If the description in the package menu isn't enough, for now you will have to search the web or look at the Emacs Wiki.
Where is package.el installed? Where are other packages installed?
package.el is installed in $HOME/.emacs.d/elpa/. Other packages are installed in subdirectories of that directory.
Where can I get the latest version of package.el?
With package.el version 0.3 and earlier, you must manually download an updated version (direct link to the file); starting in version 0.4 you will be able to upgrade package.el from the package menu, just as you would any other package.
Why aren't there more questions in the FAQ?
You haven't asked any. Help improve this FAQ by sending your questions to us.