Как настроить закрытое хранилище пакетов?


11

Я написал несколько пакетов для GNU Emacs, но они бесполезны вне среды моей компании. Я хочу иметь возможность поделиться пакетами с другими разработчиками из моей компании. Я также хочу, чтобы пакеты легко обнаруживались через package-list-packages.

Я думаю, что частный репозиторий решит мои проблемы, но я не могу найти руководство по настройке личных архивов. Насколько я понял, информационное руководство по Elisp предлагает простые каталоги и package-upload-file, но я не думаю, что оно хорошо сочетается с одновременными обновлениями пакетов. Есть ли другие варианты, которые относительно легко настроить?


1
Простой способ - создать частные git-репозитории для всех ваших библиотек и дать указание другим пользователям использовать quelpa для установки. Вокруг него не будет красивого меню, но обнаружение так же просто, как просмотр профиля или страницы организации на хостах git.
Джордон Биондо,

1
github.com/redguardtoo/elpa-mirror может быть, это может помочь? Я действительно не заглянул внутрь.
wvxvw

Это действительно вопрос Emacs?
Дрю

Ответы:


7

Источник Melpa доступен , так что вы можете просто его клонировать и запустить на сервере, настроенном для доступа только из вашего офиса (а не из всего Интернета). Ваши разработчики должны будут иметь доступ к серверу и добавлять архив package-archivesтаким же образом, как это делают Melpa, Marmalade или другие. Пакеты будут отображаться в package-list-packages, и смогут быть установлены и обновлены, как и любой другой.


Как это составляет частный репозиторий? Кажется, не отвечает на вопрос.
Дрю

3
@Drew Я предполагал, что сервер, который будет использовать roman-kashitsyn, будет находиться внутри брандмауэра компании и недоступен из более широкого Интернета. Я обновил свой ответ, чтобы прояснить это.
Zck

1
Одна вещь, которая мне не нравится в Melpa, - это то, что рецепты melpa запутаны с приложением melpa в одном и том же хранилище. Так что может быть сложно объединить исправления и новые функции в мой приватный форк. Но Melpa, вероятно, лучший вариант, чтобы попробовать.
Роман Кашицын

5

Извините, что отвечаю поздно. Я не видел этого до сих пор, но я ответил на аналогичный вопрос Как мне настроить сервер Elpa? вчерашний день. Посмотрите там в первую очередь.

Короче говоря, на самом деле очень легко настроить свой собственный локальный архив пакетов с помощью функции Emacs package-x. Мое решение выше - десять строк кода LISP. Создание собственного сайта MELPA - это много работы по сравнению. А то, что ваши пользователи настраивают и используют Quelpa, требует от них многого. Таким образом, они просто используют стандартный способ Emacs ... до тех пор, пока вы выполняете работу по настройке веб-сервера для предоставления им вашего пакета архивов.


0

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

Создать локальный репозиторий пакетов Emacs. Только установленные пакеты будут включены в репозиторий.

Таким образом, сеть не требуется, и размер вашего хранилища будет намного меньше (2 Мбайт после архивации для 160 пакетов).

Кроме того, поскольку вы упаковываете только локальные пакеты, вы на 100% уверены, что эти пакеты стабильны на новом компьютере, поскольку вы используете точно одинаковую версию пакетов на разных компьютерах.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.