Skip to content
Emacs Package Manager
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.epm.el Rename startup file and add comments in it May 28, 2016 Add reinstall command Jun 12, 2016
epm.el enable to specify epm init file. Oct 27, 2016

Emacs Package Manager



EPM is a command-line wrapper for package.el that serves as an Emacs Package Manager on command-line.


  • Emacs 24.3 or higher
  • epl 0.8 or higher



EPM is available from Melpa and Melpa-stable, you can install EPM and its dependency easily

M-x package-install RET epm RET

Since the directory package is installed to is not stable, you can setup an alias

$ alias epm='~/.emacs.d/elpa/epm-*/epm'


Install EPM's dependency epl

M-x package-install RET epl RET

Obtain EPM via git

$ git clone

Add EPM's directory to your PATH

$ export PATH=/path/to/epm/:$PATH


Run epm --help to learn the usage, below is the ouput on my machine:

$ epm --help
epm - Emacs Package Manager

    epm <command>
    epm [option]

    refresh             Download package archives
    install   PACKAGE   Install a package
    reinstall PACKAGE   Reinstall a package
    list                List installed packages
    delete    PACKAGE   Delete a package
    info      PACKAGE   Display information about a package
    search    PATTERN   Search packages
    outdated            List outdated packages
    upgrade   [PACKAGE] Upgrade a outdated package (or all outdated packages)

    -h, --help          Display this message
    -v, --version       Print version info and exit

Environment Variable:
    EMACS               The command name or executable path of Emacs

Startup File:
    ~/.epm.el           The file contains code to bootstrap package.el
                        Refer to /Users/xcy/Projects/epm/.epm.el as an example

Before you can actually use EPM to do some real package management, you may need to set EMACS and add ~/.epm.el.

Sample Startup File

;; Emacs China ELPA mirror <> is faster in China
(setq package-archives '(("gnu"   . "")
                         ("melpa" . "")
                         ("org"   . "")))

;; This is mandatory

See also .epm.el

You can’t perform that action at this time.