yum/ zypper для установки без полномочий root в независимой базе данных rpm

Моя компания разрабатывает программный продукт на основе Linux, который поставляется различным клиентам. Сам продукт состоит из небольших программных компонентов, которые взаимодействуют друг с другом.

Что мы обычно поставляем заказчику в качестве обновления / новой версии, так это текущие версии различных программных компонентов, например, compA-2.0.1, compB-3.2.3 и compC-4.1.2.

В настоящее время мы используем довольно простой сценарий оболочки для процесса установки / обновления. Тем не менее, мы бы хотели перейти к современной упаковке, в основном, чтобы иметь простой способ обмена различными версиями компонентов, отслеживания файлов и пакетов, к которым они принадлежат, а также для предоставления клиентам более простого интерфейса для обновление / установка.

Компоненты программного обеспечения устанавливаются в разных каталогах, в зависимости от требований клиентов. Так может быть в /opt, /usr/local или что-то совершенно другое.

Поскольку подавляющее большинство наших клиентов работают на дистрибутивах Linux на основе rpm, мы решили использовать rpm-пакеты вместо dpkg.

В терминах rpm наша проблема - установка без полномочий root. Это очень просто, используя следующие функции:

  • собственная база данных rpm, использующая --dbpath вариант
  • установка в разных местах с помощью Prefix механизм
  • необязательно: отключение автозависимостей библиотеки с помощью AutoReqProv: no в файле спецификации rpm

Использование этих функций / параметров позволяет нам создавать пакеты RPM, которые могут быть установлены с помощью rpm инструмент командной строки от имени пользователя без полномочий root.

Однако то, что мы действительно хотели бы увидеть, это установить эти пакеты через репозиторий http с помощью yum или же zypper, Последний является предпочтительным инструментом в дистрибутивах на основе SUSE.

Проблема, которую мы видим, состоит в том, что ни один из инструментов не предоставляет необходимую альтернативную опцию базы данных rpm ( --dbath в rpm) и поддержка префиксов, необходимых для установки без полномочий root.

У кого-нибудь есть предложение / идея, как бороться с этой проблемой? Может быть, есть третий пакет-инструмент, о котором мы не знаем?

Или мы должны пойти совсем другим путем? У меня была игра с GNU stow и написал несколько очень упрощенной логики, похожей на ням, - но тогда я в основном запустил бы свой собственный инструмент установки пакетов, который я пытался обойти.

0 ответов

Другие вопросы по тегам