package-refresh-content зависает при обращении к хосту: elpa.gnu.org:80

Я использую Emacs 24.4 для Windows (устанавливается через Chocolatey) и пытаюсь установить CIDER.

Когда я бегу M-x package-install [RET] cider [RET], Я получил [No match], Когда я бегу M-x package-refresh-contents [RET], висит на связавшись с хостом: elpa.gnu.org:80,

~/.emacs.d заполнен репозиторием GitHub, рекомендованным braveclojure.com ( здесь). Я переустановил Emacs и у меня все та же проблема.

6 ответов

Решение

У меня была такая же проблема на emacs ELPA, вики говорят, что для установки un ELPA вы должны изменить файл инициализации emacs, расположенный в ~/.emacs или же _emacs или же ~/.emacs.d/init.el для меня это было ~/.emacs-live.el так как у меня есть эта версия.

Я только что обновил этот файл следующим:

(setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/")
                     ("marmalade" . "http://marmalade-repo.org/packages/")
                     ("melpa" . "http://melpa.org/packages/")))

Кажется, мне нужна была конфигурация, из которой ELPA будет искать пакеты.

После этого я просто побежал M-x package-refresh-contents [RET] а также M-x package-install [RET] cider [RET] тот установил сидр.


Это руководство исправило это для меня: http://www.lonecpluspluscoder.com/2015/08/adding-tls-support-to-emacs-24-5-on-windows/

В основном зайдите на: http://sourceforge.net/projects/ezwinports/files/, возьмите библиотеку gnutls и просто распакуйте архив в корне вашего каталога Emacs.

Потом делать list-packages стало почти мгновенным для меня. Использование Emacs 24.5.1.

У меня была та же проблема с Emacs 24 в Ubuntu 16.04, и, похоже, ничего не решило проблему. Наконец, установка Emacs 25 решила проблему. Для Ubuntu есть пакеты по адресу https://launchpad.net/~kelleyk/+archive/ubuntu/emacs.

Двоичные файлы Windows также могут быть доступны где-то.

Помимо настройки ваших архивов пакетов, как упоминалось в предыдущем ответе (FWIW я использую HTTPS напрямую)

(setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/")
                         ("marmalade" . "https://marmalade-repo.org/packages/")
                         ("melpa" . "https://melpa.org/packages/")))

Можно столкнуться с другой проблемой, но с тем же симптомом застревания на "Обращении к хосту" из-за запуска gpg в пакетном режиме для проверки пакетов, но при этом требуется некоторый ввод. Вы можете отключить это через

(setq package-check-signature nil)

Я сталкивался с этой проблемой в Emacs 24.5.1.
Я искал здесь в SO и вне SO, у меня ничего не получалось. Мне пришлось обойти проблему, установив более новую версию Emacs: emacs25.

Переполнение стека иногда удаляет чаты. К счастью, похоже, что у меня все еще есть доступ к версии транскрипта только для чтения.

С моей точки зрения, мы не получили удовлетворительного ответа. Вот основные моменты:

  1. Мы определили, что переменная package-archives содержал только GNU ELPA.

  2. Узнав об этом, ОП написал

    Я отредактировал файл package.el. Оно работает!

  3. Я предположил, что редактирование основного файла Emacs Lisp не является хорошим решением, но ничего не получил от OP.

    Поскольку упоминается init.el файл пытается добавить MELPA, я думаю, что-то еще происходит. Возможно, .emacs.d/ каталог находится не в том месте, например.

редактирование package.el это конечно не хорошее решение. Было бы неплохо проделать дополнительную работу, чтобы определить, почему конфигурация не загружается должным образом.

Другие вопросы по тегам