运行时package-list-packages
出现以下错误:
Failed to download `gnu' archive.
gnutls.c: [0] (Emacs) fatal error: The TLS connection was non-properly terminated.
我在Windows上运行Emacs 24.4。在本周之前,软件包下载正常进行。
我试过这个指南上设置的Emacs的GnuTLS窗口。我尝试从“ 查看是否有效”部分运行此代码:
(condition-case e
(delete-process
(gnutls-negotiate
:process (open-network-stream "test" nil "www.google.com" 443)
:hostname "www.google.com"
:verify-error t))
(error e))
我确实nil
插入了缓冲区,没有验证错误,根据这篇文章,这是成功的标志。但是,如果(setq gnutls-log-level 2)
再次设置并运行代码,则会得到以下输出。
gnutls.c: [1] (Emacs) allocating credentials
gnutls.c: [2] (Emacs) allocating x509 credentials
gnutls.c: [2] (Emacs) using default verification flags
gnutls.c: [1] (Emacs) setting the trustfile: c:/gnutls/cacert.pem
gnutls.c: [1] (Emacs) gnutls callbacks
gnutls.c: [1] (Emacs) gnutls_init
gnutls.c: [1] (Emacs) got non-default priority string: NORMAL
gnutls.c: [1] (Emacs) setting the priority string
gnutls.c: [audit] Note that the security level of the Diffie-Hellman key exchange has been lowered to 256 bits and this may allow decryption of the session data
gnutls.c: [1] (Emacs) non-fatal error: Resource temporarily unavailable, try again. [1428 times]
gnutls.c: [2] (Emacs) Deallocating x509 credentials
因此,这似乎有些奇怪。根据此邮件列表,该错误通常不是有害的。不过,我仍然无法下载gnu
。
如何恢复正常的程序包获取?
六月更新
尽管在GitHub上有一些建议表明错误消息是虚假的,gnu
但仍然无法获取。我通过检查本地软件包版本以及在线存储库的最新更新来确认这一点。
24.5更新
升级到Emacs 24.5后,我不再能重现该问题。
看起来好像存储库已关闭(提供软件包的服务器已脱机)。您可以通过其他方式访问服务器吗?(例如,通过浏览器)。
—
wvxvw 2015年
是。这是存储库:elpa.gnu.org/packages
—
Matthew Piziak
我得到了相同的输出,表明这不是错误的迹象。
—
politza
这也是我的印象,但是我认为我应该发布它以便完整。
—
马修·皮齐亚克
我也收到此错误,但似乎没有造成任何伤害。软件包获取工作正常。
—
Kaushal Modi