I would like to use org-mode's contributed packages: http://orgmode.org/worg/org-contrib/


As per answer below: 1) First one should have the elpa packages added.

(require 'package)
(add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t)

This is described [here] in detail.1

2) Afterwards, below the lines above, one can add the desired modules like this:

(require 'org-checklist)

Some packages may be available in the git-hub repository but not yet in the official repository. (e.g org-eww at the time of writing). As such, requiring these will cause errors.

Before adding a requirement, it is reccomended to browse the folder:

  • You need to specify the actual value of "CONTRIB_DIR" instead of the variable name. Suppose you cloned the contributed libraries into ~/.emacs.d/org/contrib, then you need to replace CONTRIB_DIR with "~/.emacs.d/org/contrib/lisp".
    – wvxvw
    Commented Feb 12, 2015 at 16:05
  • That's what I'm using atm. I cloned the git hub repo and added a require: `(add-to-list 'load-path "~/Dropbox/appData/emacs/orgEgit/org-mode/contrib/lisp/"). But I would like to use the org-plus-contrib instead. The problem is that is has a weird file name (date inside the filename) so the same .emacs file that I share between computers won't work on all my machines. Is there a dynamic way to get to that folder? Commented Feb 12, 2015 at 16:08
  • Possible duplicate: org-plus-contrib and org with require or use-package.
    – Dan
    Commented Feb 12, 2015 at 16:33
  • Hello, I have read the post, but the advise there doesn't solve the issue unfortunatley. It is not a duplicate, these two questinos vary sligtly. Please see my edit. Commented Feb 12, 2015 at 17:12
  • If the problem is only the name, then you could do something like: (add-to-list 'load-path (car (file-expand-wildcards "~/.emacs.d/elpa/org-*/contrib/lisp"))).
    – wvxvw
    Commented Feb 12, 2015 at 19:49

2 Answers 2


You shouldn't need to do anything special. I'm running the org-plus-contrib package from the org elpa repository and can just require any of the packages that are included.

I did look and org-eww is not in the org-plus-contrib I have.(my version is 20150209)

I did a (require 'org-checklist) and evaluated it in my scratch buffer and it loaded fine.

Perhaps your org mode isn't loading properly? It is really important that the org-plus-cntrib package is loaded before any org related functions are called. If you have something which references org before you load the org-plus-contrib package, you end up with a mix of the bundled org mode and then the org-plus-contrib package, which can cause some odd behaviour.

  • Thank you so much for taking the time to investigate this. It turns out that org-eww is a fresh package that hasn't made it into the elpa repos yet. I was confused between the available org-checklist and the not-available org-eww. Commented Feb 17, 2015 at 23:41
  • Not a problem. Actually, I'm only responding to try out the new sx.el package for writing and reading questions on SO sites
    – Tim X
    Commented Feb 18, 2015 at 7:39

Taken from the online documentation:

orgmode.org hosts Org ELPA archives.

Add this to your Emacs init file to be able to list the Org mode archives:

(require 'package) (add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t)

Then M-x list-packages RET will list both the latest org and org-plus-contrib packages.

org contains the same set of files that are included in GNU Emacs. org-plus-contrib contains these files plus all contribs files, the ones you find in contrib/ from the git repo.

  • 1
    This answer should be updated to use secure HTTPS (add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t). Visitor check the link to online documentation.
    – Navidot
    Commented Feb 26, 2021 at 22:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.