[已解决] 使用emacs china镜像下载archive失败

Failed to download ‘(gnu . https://elpa.zilongshanren.com/gnu/)’ archive.
You can run the command ‘package-refresh-contents’ with M-x pa-r- RET
Failed to download ‘(gnu . https://elpa.zilongshanren.com/gnu/)’ archive.
(when (>= emacs-major-version 24)
  (require 'package)
  ;;(setq package-archives '(("gnu" . "http://elpa.zilongshanren.com/gnu/")
  ;;                         ("melpa" . "http://elpa.zilongshanren.com/melpa/"))
  (add-to-list
   'package-archives
   '(("gnu" . "https://elpa.zilongshanren.com/gnu/")
     ("melpa" . "https://elpa.zilongshanren.com/melpa/"))
   ;;   '("melpa" . "http://melpa.org/packages/")
   ;; '("popkit" . "https://elpa.popkit.org/packages/")
   ;;'("melpa" . "https://mirrors.tuna.tsinghua.edu.cn/help/elpa/")
   t)
  (package-initialize))

http和https都用了,而且popkit, tuna 的也出现这个问题。但是官方的melpa没有这个问题,但是发现一直尝试连接melpa.org:80

系统:MacOS El Captain 10.11.5 (15F34) Emacs:GNU Emacs 25.1.50.1

这是什么问题导致的呢?

你的意思是根本就连不上 melpa.org 吧。

不清楚,但肯定是你自己那边的问题。我刚才试了下 Emacs China ELPA 镜像,没遇到任何问题。

你的 add-to-list 用错了

嗯,谢谢!后来fanqiang继续用了melpa.org

如果是用 add-to-list 正确的用法是不是得一个一个地添加?

(add-to-list 
    'package-archives '("gnu" . "https://elpa.zilongshanren.com/gnu/"))
(add-to-list
    'package-archives '("melpa" . "https://elpa.zilongshanren.com/melpa/"))

add-to-list 无法同时添加元素到 list 里吗?

我还试过这样更改镜像,但是也是类似问题,failed to download archive。

(setq package-archives '(("gnu" . "http://elpa.zilongshanren.com/gnu/")
                         ("melpa" . "http://elpa.zilongshanren.com/melpa/"))

我自己再找找原因。

是。但你不应该用它添加 gnu elpa 的镜像,因为默认已经包含了 gnu elpa。

这么做没问题。

写一个循环嘛,反正elisp是个编程语言_(:зゝ∠)_

(dolist (i '(("melpa-cn" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/melpa/")
             ("org-cn"   . "http://mirrors.tuna.tsinghua.edu.cn/elpa/org/")
             ("gnu-cn"   . "http://mirrors.tuna.tsinghua.edu.cn/elpa/gnu/")))
  (add-to-list 'package-archives i))

:astonished: 长知识了 :expressionless: 我所了解的 (e)lisp 都不能算入门,目前只能满足于最基本的 emacs 的配置用途。