¿Cómo configurar un repositorio de paquetes privado?

11

He escrito varios paquetes para GNU Emacs, pero son inútiles fuera del entorno de mi empresa. Quiero poder compartir los paquetes con otros desarrolladores de mi empresa. También quiero que los paquetes sean fácilmente detectables a través de package-list-packages.

Creo que el repositorio privado resolverá mis problemas, pero no puedo encontrar ningún manual sobre la configuración de archivos personales. Según tengo entendido, el manual de información de Elisp sugiere directorios simples y package-upload-file, pero no creo que funcione bien con las actualizaciones de paquetes simultáneos. ¿Hay alguna otra opción que sea relativamente fácil de configurar?

roman-kashitsyn
fuente
1
Una ruta fácil sería hacer repositorios privados de git para todas sus bibliotecas e indicar a otros que usen quelpa para la instalación. No habrá un buen menú a su alrededor, pero la capacidad de descubrimiento es tan fácil como navegar por el perfil o la página de la organización en los hosts git.
Jordon Biondo
1
github.com/redguardtoo/elpa-mirror tal vez esto pueda ayudar? Realmente no miré dentro.
wvxvw
¿Es realmente una pregunta de Emacs?
Drew

Respuestas:

7

La fuente de Melpa está disponible , por lo que podría clonarla y ejecutarla en un servidor configurado para que sea accesible solo desde su oficina (y no desde Internet). Sus desarrolladores tendrían que poder acceder al servidor, y tendrían que agregar el archivo de package-archivesla misma manera que Melpa, Marmalade u otros. Los paquetes aparecerían en package-list-packages, y podrían instalarse y actualizarse como cualquier otro.

zck
fuente
¿Cómo constituye eso un repositorio privado ? No parece responder la pregunta.
Drew
3
@Drew Supuse que el servidor que roman-kashitsyn usaría estaría dentro del firewall de la compañía, no accesible desde Internet. He actualizado mi respuesta para aclarar esto.
zck
1
Una cosa que no me gusta de Melpa es que melpa-the-recetas está enredada con melpa-the-application en el mismo repositorio. Por lo tanto, podría ser una molestia combinar correcciones de errores y nuevas características en mi bifurcación privada. Pero melpa es probablemente la mejor opción para probar.
roman-kashitsyn
5

Perdón por responder tarde. No vi esto hasta ahora, pero respondí una pregunta similar ¿ Cómo configuro un servidor Elpa? ayer. Echa un vistazo allí primero.

En resumen, es realmente muy fácil configurar su propio archivo de paquete local con la package-xfunción de Emacs . Mi solución anterior es diez líneas de código lisp. Configurar su propio sitio MELPA es mucho trabajo en comparación. Y pedirles a tus usuarios que configuren y usen Quelpa es pedirles mucho. De esta manera, solo usan la forma estándar de Emacs ... siempre y cuando hagas el trabajo de configurar un servidor web para exponerles el archivo de tu paquete.

Precio de Rodney
fuente
0

https://github.com/redguardtoo/elpa-mirror

Crear un repositorio local de paquetes de Emacs. Solo los paquetes instalados se incluirán en el repositorio.

Por lo tanto, no se requiere red y el tamaño de su repositorio será mucho más pequeño (2M bytes después de la compresión para aproximadamente 160 paquetes).

Además, dado que solo empaqueta paquetes locales, está 100% seguro de que estos paquetes son estables en la nueva máquina porque está usando exactamente la misma versión de paquetes en diferentes computadoras.

Chen Bin
fuente