Hay varios repositorios de paquetes disponibles.
Oficial
GNU ELPA es el repositorio oficial del paquete. Es pequeño y requiere la asignación de derechos de autor (de todos los autores de un paquete) a la FSF para contribuir a él.
Los paquetes en GNU ELPA son realmente solo un repositorio git . La ventaja de estar alojado aquí es que el equipo central intenta actualizar los paquetes si Emacs mismo agrega o desprecia las características.
Construido desde la fuente
MELPA es el repositorio de paquetes más grande y de más rápido crecimiento . Lanza una nueva versión cada vez que se empuja una nueva versión a un repositorio, o se actualiza una página de EmacsWiki.
Es sangrienta, pero funciona muy bien en la práctica. MELPA está curada para evitar paquetes duplicados y para garantizar que se registre el inicio canónico del paquete (en lugar de una bifurcación aleatoria).
MELPA tiene el problema de que las versiones son solo marcas de tiempo, por ejemplo my-package-20131231.2359
. Esto significa que si depende de my-package:
;; Package-Requires: ((my-package "1.2.3"))
entonces Emacs pensará que cualquier versión de MELPA es lo suficientemente nueva.
MELPA Stable es lo mismo que MELPA, pero en lugar de usar versiones de fecha y hora, usa las versiones en etiquetas git. Esto permite una mejor resolución de dependencia, pero tiene problemas para depender de los paquetes wiki .
Subidas de usuarios
Marmalade es mucho más como un repositorio tradicional de otros lenguajes de programación. El desarrollador del paquete carga el paquete a Marmalade cuando hacen un lanzamiento.
En principio, esto le da a los paquetes un proceso de lanzamiento adecuado (Marmalade es anterior a MELPA estable) y también evita el problema del número de versión autogenerado. Sin embargo, no hay verificación de identidad. Cualquiera puede cargar un paquete, incluso si no lo escribió. Esto se vuelve difícil si el responsable de mantenimiento my-package
encuentra que alguien más ha subido my-package
y no puede cargar nuevas versiones posteriormente.
Marmalade solía ser una aplicación node.js, y ahora está escrita en elisp. Ambas versiones han tenido problemas de tiempo de actividad ocasionalmente.
Proyecto específico
Org-mode ELPA es un repositorio que solo aloja org
y org-plus-contrib
. Org-mode es parte del núcleo de Emacs, pero está desarrollado externamente y el código solo se sincroniza periódicamente con el enlace troncal de Emacs. Este repositorio le permite tener el modo org de vanguardia.
User42 ELPA es un repositorio para un desarrollador de paquete único que ha lanzado una gran variedad de paquetes de Emacs . Si le gusta alguno de sus paquetes, puede agregar este repositorio.
Sunrise Commander ELPA es un repositorio de extensiones para Sunrise Commander (un paquete de Emacs para la exploración de archivos, inspirado en Midnight Commander ).
Retirado
El ELPA de Tromey fue el primer repositorio establecido. Se reemplaza oficialmente con GNU ELPA, pero no tenía los mismos requisitos de asignación de derechos de autor. A partir de 2010, ya no se actualiza.
El archivo de paquetes de Elpy contenía varios paquetes desarrollados por Jorgen Schaefer para 'Elpy, el entorno de desarrollo de Python de Emacs' , pero que migraron a MELPA Stable.