Was ist die Magie hinter der ELPA?

Ich verwende Aquamacs und ich verwende ELPA, das Dateien in ~ / .emacs.d / elpa installiert?

Was ist die Magie hinter dieser ELPA? Ich meine, ohne ELPA sollte ich die Pakete in einem bestimmten Verzeichnis herunterladen und installieren und diese beiden Zeilen in .emacs einfügen.

(Add-to-List-Ladepfad "PACKAGE_DIRECTORY")
(benötigt 'PAKET)

Aber bei ELPA wird .emacs oder / Users / smcho / Library / Preferences / Aquamacs Emacs / {Preferences.el, customizations.el} nichts hinzugefügt. Wie ist das möglich

Hinzugefüg

Das habe ich mit Aquamacs gefunden.

Aquamacs liest ~ / Preference / Aquamacs Emacs / Preference und hat "(add-to-list 'load-path kitfiles-dir) (require' init)", was start kit liest. Die Init.el des Startkits hat das "(Paket erforderlich) (Paket-Initialisieren)" ~ / Bibliothek / Einstellungen / Aquamacs Emacs / aquamacs-emacs-starter-kit / Der Hersteller hat das package.el

Ich denke, die Initialisierungsdateien werden nicht geändert, aber der Paketmanager liest die Datei ~ / .emacs.d / elpd / *, um sie automatisch zu initialisieren, wie ich *** - autoloads.el in jeder Datei sehe.

Added2

Mit Emacs 24 scheint es, dass Paket vorgefertigt ist. Ich brauche nur diese Zeilen in .emacs oder .emacs.d / init.el, um ELPA zum Laufen zu bringen. Hinweise vonDiese Seit.

(require 'package)
(add-to-list 'package-archives
         '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)

(when (not package-archive-contents)
  (package-refresh-contents))
(defvar my-packages '(clojure-mode
               nrepl))
(dolist (p my-packages)
  (when (not (package-installed-p p))
    (package-install p)))

Antworten auf die Frage(4)

Ihre Antwort auf die Frage