Using the Emacs Package Manager to Install My Packages

Table of Contents

Configuration

First, add my package repository in your init file:

(add-to-list 'package-archives
  '("kw" . "https://www.lib.uchicago.edu/keith/software/emacs/packages/"))

Restarting emacs is the simplest way to proceed at this point.

If you don’t want to restart, eval the above code.

Browsing the Package Menu

To find packages to install, do:

M-x list-packages RET

In the resulting buffer, search by name for the package you want to install. You can also click on the header to sort by “Archive” and find my packages grouped together under “kw”.

Type “i” to mark a package for installation (feel free to mark other packages that look appealing), and then type “x” to execute the marked installs.

Maintenance

Packages are installed in ~/.emacs.d/elpa by default and will be set up for autoloading in this and all future Emacs sessions. After installing a package from the Package Menu, it is normally ready to go with no need to restart.

You should periodically pop into the Package Menu and type “U” to find out if any of the packages you’ve installed have been updated (then “x” to update them, if so).

Manual (Non-Browsing) Installation

If you know the name of the package you want to install, you can do this instead of browsing:

M-x package-refresh-contents RET
M-x package-install RET

Type the name of the package (completion is available).

Additional Community Package Archives

I use the two “standard” 3rd-party repos in addition to the default Gnu repo:

(add-to-list 'package-archives
  '("marmalade" . "http://marmalade-repo.org/packages/"))
(add-to-list 'package-archives
  '("melpa-stable" . "http://stable.melpa.org/packages/"))

When the same package is available in both Marmalade and Melpa-stable, I recommend installing from the latter, as the package will be less likely to break in future updates — Marmalade moves really fast and can be fragile.

Further Documentation

See ยง47 Emacs Lisp Packages in the Emacs info documentation:

M-x info-display-manual RET emacs RET
m Packages RET


Author: Keith Waclena

Last Modification: 2019-08-16 Fri 15:45

Emacs 26.2 (Org mode 9.1.9)