Fehler beim Abrufen: https://elpa.gnu.org/packages/archive-contents (Fehler http 400)

Sep 08 2020

Ich bin auf dieser Version von GNU Emacs auf einem Windows 10-Computer: GNU Emacs 26.3 (Build 1, x86_64-w64-mingw32) vom 29.08.2019

In den letzten Wochen hat Emacs diesen Fehler beim Zugriff auf GNU Elpa gemeldet, wenn ich "Listenpakete" ausführe:

Importieren von package-keyring.gpg ...
Fehler im Prozessfilter behoben : Fehler beim Abrufen:https://elpa.gnu.org/packages/archive-contents(Fehler http 400) [2 mal]
Paketaktualisierung abgeschlossen

In einem Browser kann ich problemlos auf die URI zugreifen. Dies geschieht auf zwei Windows 10-Boxen, die ich habe.

Ein Google zeigt Beschwerden über solche Fehler erst vor einem Jahr an, obwohl ich mit "http 400 (Bad Request)" keine gefunden habe. Außerdem habe ich keine Fehler für Melpa Stable, das andere Repository in meiner Paketarchivliste:

 '(package-archives
   (quote
    (("gnu" . "https://elpa.gnu.org/packages/")
     ("melpa-stable" . "https://stable.melpa.org/packages/"))))

Hat einer von Ihnen Vorschläge, was ich sonst noch versuchen könnte?

Danke, Mario

Antworten

2 ablian Dec 17 2020 at 11:06

Probieren Sie dies aus: (setq gnutls-algorithm-priority "NORMAL: -VERS-TLS1.3") Referenz: https://www.reddit.com/r/emacs/comments/cdei4p/failed_to_download_gnu_archive_bad_request/etw48ux/?utm_source=share&utm_medium=web2x

Erläuterung: Es handelt sich um einen Race-Fehler in Emacs und neueren Versionen von GNU TLS, der in Emacs v26.1 angezeigt wurde, aber in Emacs v27 behoben ist. Eine einfache vorübergehende Lösung besteht darin, die TLS 1.3-Unterstützung in Emacs v26.1 zu deaktivieren, und die Rennbedingungen verschwinden. Es ist keine gute Lösung, da wir TLS 3.1 benötigen, aber es wird so lange dauern, bis die richtige Lösung implementiert ist. Wie im ursprünglichen Fehlerbericht beschrieben. Sehenhttps://debbugs.gnu.org/cgi/bugreport.cgi?bug=34341#19

1 wasamasa Sep 11 2020 at 00:50

Dies ist höchstwahrscheinlich, dass Ihre Emacs keine funktionierende TLS-Unterstützung haben. Stellen Sie sicher, dass Ihr Emacs mit GnuTLS-Unterstützung erstellt wurde (dies sollte standardmäßig aktiviert sein, überprüfen Sie dies M-: (string-match-p "GNUTLS" system-configuration-features)) und dass die GnuTLS-Bibliotheken am erwarteten Speicherort verfügbar sind. Letzteres funktioniert unter Windows am einfachsten, indem Sie eine Version installieren, die die Abhängigkeiten enthälthttps://ftp.gnu.org/gnu/emacs/windows/ für die entsprechenden Downloads.