1.2 Installation

Org is included in distributions of GNU Emacs, so you probably do not need to install it. Most users will simply activate Org and begin exploring its features.

If, for one reason or another, you want to install Org on top of the pre-packaged version, you can use the Emacs package system or clone Org’s Git repository. We strongly recommend sticking to a single installation method.

When installing Org on top of the pre-packaged version, please note that Org stable versions are meant to be fully compatible with the last three stable versions of Emacs but not with older Emacsen.

Some Org components also depend on third-party packages available through package archives. Org is only guaranteed to be compatible with the latest stable versions of these third-party packages.

Using Emacs packaging system

Recent Emacs distributions include a packaging system which lets you install Elisp libraries. You can install Org from the “package menu”, with M-x list-packages. See Package Menu.

Important: You need to do this in a session where no ‘.org’ file has been visited, i.e., where no Org built-in functions have been loaded. Otherwise, autoloaded Org functions will mess up the installation.

To avoid interference with the built-in Org mode, you can use the command line (you need Emacs 30 or later):

emacs -Q -batch -eval "(progn (require 'package) (package-initialize) (package-refresh-contents) (package-upgrade 'org))"

This approach has the advantage of isolating the upgrade process from a running Emacs session, ensuring that version conflicts cannot arise.

Using Org’s Git repository

You can clone Org’s repository and install Org like this:

$ cd ~/src/
$ git clone https://https.git.savannah.nongnu.org/git/org-mode.git
$ # alternatively, you can use mirror
$ # git clone https://git.sr.ht/~bzg/org-mode
$ cd org-mode/
$ make autoloads

Note that in this case, ‘make autoloads’ is mandatory: it defines Org’s version in ‘org-version.el’ and Org’s autoloads in ‘org-loaddefs.el’.

Make sure you set the load path correctly in your Emacs init file:

(add-to-list 'load-path "~/src/org-mode/lisp")

You can also compile with ‘make’, generate the documentation with ‘make doc’, create a local configuration with ‘make config’, and install Org with ‘make install’. Please run ‘make help’ to get the list of compilation/installation options.

For more detailed explanations on Org’s build system, please check the Org Build System page on Worg.

Installing Org’s contributed packages

Org’s repository used to contain the ‘contrib/’ directory for add-ons contributed by others. As of Org 9.5, the directory has been moved to the dedicated org-contrib repository, which you can install separately as a package from NonGNU ELPA.

There are many valuable packages maintained outside the Org repository. Worg has a list of org-contrib and external packages; it is certainly not exhaustive.