Let's say I'm following the master branch of Org mode. So, I have it under ~/src/org-mode add tell my Emacs to load it by adding "~/src/org-mode/lisp" to load-path.

I use ELPA and MELPA to install some Org mode extensions from there. Unfortunately, package.el installs another version of Org mode because the extensions, obviously, depend on Org mode proper.

Is there any way to tell the package manager that I already have Org mode so that it does't have to install another version of it? Something like

(setq package-locally-installed '((package1 . version) (package2 . version))

BTW, I don't have any problem having multiple version of packages. My setup seems to work fine; ~/src/org-mode shadows the other. My question is to tell package.el not to install packages I have already.

There is kind of the same question package-install doesn't pick up dependencies that are already in site-lisp, but the discussion is more like fixing helm installation but not to tell.

Another related question: How to install package without install dependencies through "package"?, which handles the issue by using a local repo. It seems to work but it'd be nice if package.el already have some variable I can set.

1 Answer 1


You might be able to do what you want with:

(push '(org 9 5) package--builtin-versions)

[ Side note: I've had plans to merge <pkg>-pkg.el into <pkg>-autoloads.el such that loading <pkg>-autoloads.el marks the package as installed (and activated). This way you could just do

(load "~/src/org-mode/org-autoloads")

and it would not only take care of adjusting the load-path (as is already the case) but it would also automatically solve your problem at the same time. ]

  • What happened to your plan? That sounds good to me. Commented Jan 12, 2018 at 1:50
  • BTW, even if I put (org 9 5) in the package--builtin-versions, it doesn't show up in the *Packages* buffer. Am I missing something? Commented Jan 12, 2018 at 2:05
  • Too many plans, too little time. I'd be happy to help someone make such a change.
    – Stefan
    Commented Jan 12, 2018 at 2:38

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.