3

There are several methods to install and manage packages for Emacs:

  • package.el
  • el-get
  • use-package

What is the easiest way to install package? It seems package.el ships with the default Emacs installation.

I tried use-package, each time I start Emacs, it will take a few second to contact hosts like melpa...

Nick
  • 4,423
  • 4
  • 24
  • 41
  • I'm using package.el as it comes with (recent versions of) Emacs. It only contacts repositories when you ask it to, so there's no cost to managing packages this way. –  Dec 23 '14 at 06:58
  • Package.el is the standard way and here is some help: http://wikemacs.org/wiki/Package.el el-get is an alternative solution which existed before package.el and can still be complementary sometimes. Use-package is (correct me if I'm wrong) a macro around package.el. – Ehvince Dec 23 '14 at 10:17
  • Related thread: [What are the practical differences between the various Emacs Package Repositories?](http://emacs.stackexchange.com/questions/268/what-are-the-practical-differences-between-the-various-emacs-package-repositorie). – Dan Dec 23 '14 at 11:21
  • @Dan Thank you. That's highly valuable. – Nick Dec 23 '14 at 11:24
  • I'll put in a word for my package manager, [`straight.el`](https://github.com/raxod502/straight.el), since I personally prefer it (obviously) to `package.el`. You can read the *extremely verbose* documentation to learn about the differences. I won't put this as an answer, since it doesn't answer your question: the **standard** package manager is `package.el`, whereas `straight.el` is almost certainly never going to be shipped with Emacs. Re: @Ehvince I've added functionality to `use-package` to allow using it with other package managers, including `straight.el`. – Resigned June 2023 Jul 13 '17 at 03:54

1 Answers1

8

Well you've answered your own question: package.el is the standard way to install packages, because it's built into Emacs 24.

Everything else is non-standard (and probably somewhat subjective. I manage most third-party libraries via el-get, personally).

phils
  • 48,657
  • 3
  • 76
  • 115
  • you're right. The reason I ask this question is to find out what others use for package management. package.el mess up with the package `auto-complete`. (Maybe it's not package.el's fault). I tried use-pacakge and el-get, finally satisfied with el-get. – Nick Dec 23 '14 at 07:42
  • MELPA and MELPA-Stable are the best for vetted packages. El-Get is the best for things under your vetting. – grettke Dec 24 '14 at 03:19
  • @grettke After using different methods/repositories for a while, I begin to realize that your words is really invaluable: concise and to the point. Thank you! – Nick Dec 27 '14 at 11:49