FREEDOM251

Freedom251 › Package Registries

GNU ELPA

Free plan Open source Self-hostedWeb

Visit GNU ELPA Alternatives Pricing

GNU ELPA's own site

What GNU ELPA is

GNU ELPA is the default package repository for GNU Emacs. Its web archive lets users browse packages, check their versions and descriptions, and install packages from within Emacs using `package-install` or `M-x list-packages`. Each accepted package has an individual page that can show its description, recent releases, a changelog preview, and a rendered manual. The archive is free, with a listed price of $0, and it has no free trial.

GNU ELPA sets conditions for package submissions. Packages must use a GPL-compatible license, with GPLv3 or later preferred, and their core functionality must work on a system using only free software, subject to case-by-case exceptions. Significant past and present contributors must sign the FSF copyright assignment. Submissions are emailed to the emacs-devel mailing list with a package description, public Git repository link, and preferred archive. A build server synchronizes package repositories and releases a new version when a commit changes the package’s Version header. The site points users to `M-x report-emacs-bug` for bug reports and the help-gnu-emacs mailing list for assistance. Its contribution guidance also notes that compromised access to a maintainer’s repository can put a package at risk.

Who it suits

GNU ELPA suits GNU Emacs users who want to browse and install packages through Emacs or the web. It also fits package contributors prepared to meet its licensing, free software, and FSF copyright assignment requirements.

What it does well

  • Browse package versions and descriptions in the archive.
  • Install packages from Emacs with `package-install` or `M-x list-packages`.
  • Accepted packages can have release, changelog, and manual details.
  • Free to use, with a listed price of $0.

What to know first

  • No free trial is offered.
  • Package contributors must meet licensing and copyright assignment requirements.
  • Packages can face risk if maintainer repository access is compromised.

Plans

PlanBilled and limitsPrice
GNU ELPAFree · GNU Emacs packages · GPL-compatible licensing · FSF copyright assignment for significant contributorsFree

As elpa.gnu.org lists them, read 15 Oct 2026. The maker's own page has the final word.

Getting started

  1. Open the GNU ELPA website to browse packages.
  2. In Emacs, run `M-x list-packages` to view the package list.
  3. Install a package with `package-install` or from the package list.

Verdict

Choose GNU ELPA if you use GNU Emacs and want its default package repository, with browsing and installation available through the web archive and Emacs commands. Contributors should be ready to meet its license and FSF assignment rules. Users seeking profiling or broader software package management should look elsewhere.

Questions

How much does GNU ELPA cost?

It is free, with a listed plan price of $0.

Is there a free trial?

No, GNU ELPA has no free trial.

How can I browse and install packages?

Browse the archive on the web or run `M-x list-packages` in Emacs. Install packages with `package-install` or from the package list.

What rules apply to submitted packages?

Packages must use a GPL-compatible license, ideally GPLv3 or later, and core functionality must work using only free software, subject to case-by-case exceptions. Significant past and present contributors must sign the FSF copyright assignment.

How do contributors submit a package?

Submissions are emailed to the emacs-devel mailing list with a description, a public Git repository link, and the preferred archive.

Where can users report bugs or ask for help?

The site directs users to `M-x report-emacs-bug` for bug reports and the help-gnu-emacs mailing list for assistance.

Facts from GNU ELPA's own pages

Archive format
An archive is a web-accessible directory containing single-file Lisp packages or tar files with multiple files. · gnu.org, 15 Oct 2026
Build and releases
The build server regularly synchronizes package repositories and releases a new version when a commit changes the package’s Version header. · elpa.gnu.org, 4 Oct 2026
Build extensibility
Package specifications support custom documentation files, NEWS files, build targets, shell commands, version maps and branch selection. · github.com, 15 Oct 2026
Completion integrations
The cape package provides completion-at-point backends and adapters for Company, Corfu and Emacs's default completion UI. · elpa.gnu.org, 15 Oct 2026
Contribution channel
Prospective contributors are asked to email emacs-devel with a package description, public repository link and preferred GNU or NonGNU archive. · elpa.gnu.org, 15 Oct 2026
Contributor requirement
All significant past and present contributors to GNU ELPA packages must sign the FSF copyright assignment. · elpa.gnu.org, 4 Oct 2026
Copyright assignment
Significant past and present contributors to GNU ELPA packages must assign copyright to the Free Software Foundation. · elpa.gnu.org, 15 Oct 2026
Dependency handling
Emacs automatically downloads required dependencies when installing a package, stopping if a required dependency is unavailable. · gnu.org, 15 Oct 2026
Development archive
GNU ELPA publishes a separate GNU-devel ELPA archive for development or bleeding-edge package versions. · elpa.gnu.org, 15 Oct 2026
Free software criterion
A package’s core functionality must work on a system using only free software, subject to case-by-case exceptions. · elpa.gnu.org, 4 Oct 2026
Independent praise: built-in ecosystem
Emacs Redux highlights that GNU ELPA packages such as cl-lib, eldoc and xref originated with Emacs development and integrate closely with the editor. · emacsredux.com, 15 Oct 2026
Independent praise: official status
Emacs Redux describes GNU ELPA as the official Emacs package repository and notes that some packages are bundled with Emacs. · emacsredux.com, 15 Oct 2026
Independent security observation
The Emacs manual says archive packages should be trusted because installing them can run code with the user's permissions, and recommends cryptographic signing to improve security. · gnu.org, 15 Oct 2026
Installation command
Users can browse and install packages from inside Emacs with M-x list-packages. · elpa.gnu.org, 15 Oct 2026
Install location
Installed packages are placed under the package-user-dir directory, which defaults to ~/.emacs.d/elpa/. · gnu.org, 15 Oct 2026
License policy
Submitted packages must use a GPL-compatible license, with GPLv3 or later preferred. · elpa.gnu.org, 15 Oct 2026
Limit: contributor burden
Emacs Redux reports that copyright paperwork, the ELPA repository workflow and the Emacs bug tracker discourage many outside contributors. · emacsredux.com, 15 Oct 2026
Limit: outages
Reddit users reported GNU ELPA and related GNU sites being unreachable for hours during a June 2024 incident, with packet loss and 443 errors. · reddit.com, 15 Oct 2026
Limit: package freshness complaint
A Reddit user reported that an older Magit package in ELPA caused compatibility problems and that switching to MELPA resolved the installation issue. · reddit.com, 15 Oct 2026
Limit: refresh hangs
A Reddit report describes package-refresh-contents hanging indefinitely on Debian 11 while accessing GNU and NonGNU ELPA, with IPv6 or site connectivity suspected. · reddit.com, 15 Oct 2026
Limit: smaller catalog
Emacs Redux reported GNU ELPA hosting about 280 packages at the time, far fewer than MELPA's roughly 5,000 packages. · emacsredux.com, 15 Oct 2026
Local hosting
The repository documentation describes deploying a locally hosted archive by generating archive files and serving the archive directory over HTTP. · github.com, 15 Oct 2026
Maintainer compromise risk
GNU ELPA's contribution page states that a compromised package maintainer repository can create a security risk for users. · elpa.gnu.org, 15 Oct 2026
Maker headquarters
The Free Software Foundation lists its mailing address in Boston, Massachusetts 02196. · fsf.org, 15 Oct 2026

Where GNU ELPA stands on Freedom251

Look at these too