Every time I use the command helm-list-elisp-packages it downloads all the index files from melpa, gnu etc. Is there a way to make it rely on the previous cache of the index files ?

I know there is package-list-packages-no-fetch which does what I want but it doesn't have the nice helm interface.

  • You should open an issue on Helm repo to requeste this feature..
    – Tu Do
    Apr 10 '15 at 13:43

Actually, helm-list-elisp-package already does what you want: it only downloads descriptions of all configured ELPA packages for the first time.

Even without downloading, It may still looks slow because of a great number of packages. In this case, you can use helm-resume to resurrect previously invoked helm-list-elisp-package, it is much faster.

Please also see the implementation of helm-list-elisp-package and the docstring of helm-resume.


Don't fetch the updated list of packages:

(defun helm-list-elisp-packages-no-fetch ()
  (setq helm-el-package--initialized-p t)
  (helm-list-elisp-packages nil))

Do fetch the updated list of packages:

C-u M-x helm-list-elisp-packages

Only fetch for the first time during one Emacs session and don't refetch for the rest time:

M-x helm-list-elisp-packages
  • The problem is If I quit emacs and re-open it again, it downloads the index file again from the remote repositories.
    – Sibi
    Apr 10 '15 at 16:48
  • Thanks, in the latest version of helm, this command has been added. Related issue: github.com/emacs-helm/helm/issues/971
    – Sibi
    Apr 12 '15 at 17:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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