90
votes
Accepted
What are the practical differences between the various Emacs Package Repositories?
GNU ELPA is the official GNU Emacs package repository. It's the only one enabled by default, which means that it has the greatest reach. At the same time, submitting a package there is a bit of a ...
58
votes
Accepted
Do I still need GNU ELPA if I have MELPA?
First of all, ELPA is the name of a specification, the Emacs Lisp Package Archive. There are three widely known implementations of that specification, GNU ELPA, Marmalade and MELPA.
GNU ELPA is the ...
54
votes
How to test REST API with Emacs?
restclient is the most "interactive" mode.
This is a tool to manually explore and test HTTP REST webservices.
Runs queries from a plain-text query sheet, displays results as a
pretty-printed ...
52
votes
Accepted
Synchronize packages between different machines
For emacs 25 or newer refer to this answer. For emacs < 25 there's no automatically generated manifest file that you can synchronize to achieve the desired effect.
That said, something you can do ...
50
votes
Accepted
How to proceed on package.el signature check failure
set package-check-signature to nil, e.g. M-: (setq package-check-signature nil) RET
download the package gnu-elpa-keyring-update and run the function with the same name, e.g. M-x package-install RET ...
46
votes
What are the practical differences between the various Emacs Package Repositories?
The way I think of it, some repos have more overhead involved with submitting packages than others; the repos with more overhead tend to have fewer packages. In order from most to least overhead:
GNU ...
43
votes
Accepted
package-initialize: wrong type argument : arrayp , nil
I ran into this the other day. I think it was caused by an invalid package archive file. The immediate fix is to delete <user-emacs-directory>/elpa/archives/melpa/archive-contents; it will be ...
35
votes
Synchronize packages between different machines
I keep my .emacs.d directory in version control. Then, in my init.el and subsequent files I use use-package to define package setup. Not only does use-package lazily load your packages, it will ...
33
votes
What are the practical differences between the various Emacs Package Repositories?
There are several package repositories available.
Official
GNU ELPA is the official package repo.
It's small, and requires copyright assignment (of all authors of a package) to the FSF to contribute ...
28
votes
Accepted
Switching between window layouts
The built in way to do this is with registers.
For instance use C-xrwa to save the current window configuration to register a.
Then you can use the built in binding C-x1 to run delete-other-windows
...
27
votes
How to test REST API with Emacs?
Old question, yes... But in the event that anyone Googles this; another option is using Org Babel and ob-http... (Can be installed from melpa.)
With org-babel, you can make an .org file containing "...
25
votes
Accepted
Why do I have to add each package to load-path? (or Problem with require 'package in my init file)
TL;DR:
Add the following line to the top of your init file (.emacs.d/init.el or .emacs):
(package-initialize)
The explanation
Creating more of the files which Emacs might use as the user-init-file ...
24
votes
Switching between window layouts
I use winner-mode. Here's my setup:
(winner-mode)
(global-set-key [f7] 'winner-undo)
(global-set-key [C-f7] 'winner-redo)
(global-set-key [f9] 'delete-other-windows)
(global-set-key [C-f9] 'delete-...
24
votes
Accepted
Difference between init and config in use-package
They are different if the package is deferred, i.e. not loaded until it is needed. In that case :init will be executed at the time your emacs file is first read, but :config will be executed at the ...
22
votes
Accepted
package-install reports "no match"
Maybe refreshing package contents could help: try evaluating (package-refresh-contents) or typing M-xpackage-refresh-contents.
20
votes
Accepted
How to use skewer-mode?
TLDR; You have to start the http server (simple-http) and load your HTML files through it.
For example, let's say you have a HTML file named hello.html and a JS script file named script.js in /home/...
20
votes
Accepted
A non-free package in Emacs?
You can find information about this package on the Debian webpage, which includes this:
This package contains the architecture independent infrastructure that is not compliant with the Debian Free ...
20
votes
Failed to download 'gnu' archive
Add the following before package-initialize:
(setq gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3")
This is apparently a bug in Emacs 26.2 for MacOS. I found this solution in this
reddit thread.
19
votes
Accepted
Why does emacs come packaged with games and amusements?
I think the only honest answer is "because we can".
According to history, the first entry lisp/play/studly.el for the GNU Emacs repository was created in 1986. Then over the years, a few additions ...
19
votes
org-plus-contrib and org with `require` or `use-package`
The correct way to do this with use-package is as follows:
(use-package org
:ensure org-plus-contrib
...
The first argument makes sure that it is the org.el file being sourced. The :ensure ...
19
votes
Accepted
Technical considerations for package maintainers to not use the Emacs package manager?
The problem you're referring to is probably that when you upgrade a package from within an Emacs session where that package is already in use, the old version of the package will sometimes interfere ...
19
votes
Accepted
What does (require 'package) mean for emacs and how does it differ from load-file?
If you load a library repeatedly, that file will be read and its code evaluated repeatedly (each and every time you load it).
If you require a library repeatedly, it will load the library once (at ...
18
votes
Synchronize packages between different machines
In Emacs-25, there is the variable package-selected-packages, so you can customize this variable and use package-install-selected-packages to make sure they're installed.
17
votes
Accepted
Automatically update packages and delete old versions
The following is now part of the Paradox package. Just invoke paradox-upgrade-packages.
This should do it.
(defun endless/upgrade ()
"Upgrade all packages, no questions asked."
(interactive)
...
16
votes
How to proceed on package.el signature check failure
FWIW - I had this issue with the signature org-20140407.tar.sig. Like Sigma's package-check-signature is/was allow-unsigned.
I changed the package-check-signature value to nil and the problem was ...
16
votes
Accepted
How can I improve startup time despite many packages?
One of the design choices in package.el was to try and make things "simple". Part of this is that package-initialize searches for all the packages that are installed, then tries to figure out which ...
15
votes
How to proceed on package.el signature check failure
If you try to install the package gnu-elpa-keyring-update (which seems to have the purpose of updating the keys used by the package manager), you will see in its description that you can do:
gpg --...
15
votes
Accepted
When to specify a package name in use-package's :ensure tag?
But for some packages that doesn't work. Such as auctex.
The reason (use-package tex :ensure t) doesn't work for auctex is because auctex names a GNU ELPA package (see (emacs) Packages), whereas tex ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
package × 440package-repositories × 67
init-file × 50
use-package × 32
org-mode × 20
spacemacs × 18
debugging × 16
require × 15
install × 13
package-development × 13
autoload × 12
list-packages × 11
auctex × 9
byte-compilation × 8
start-up × 7
magit × 6
elisp × 6
help × 6
auto-complete-mode × 6
key-bindings × 5
emacs24.4 × 5
cask × 5
helm × 4
osx × 4
window × 4